单图像九宫格形式发送朋友圈

(17) 2023-10-03 17:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说单图像九宫格形式发送朋友圈,希望能够帮助你!!!。

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第1张

如何将手机拍的照片

转换为九宫格形式

并在朋友圈发送

接下来

使用MATLAB给出

解决方案

并做优化

简单的使用图像裁剪

将图像裁成

九宫格形式

程序设计如下

clc
clear all
%图像读取
I = imread('C:\Users\Administrator\Desktop\1.JPG');
%预处理
[m,n,z] = size(I);
p = floor(m/3);
q = floor(n/3);
J = cell(9,1);
%图像九宫格分割
J{1,1} = I(1:p,1 : q,:);
J{2,1} = I(1:p,q : 2*q,:);
J{3,1} = I(1:p,2*q : 3*q,:);

J{4,1} = I(p:2*p,1:q,:);
J{5,1} = I(p:2*p,q : 2*q,:);
J{6,1} = I(p:2*p,2*q : 3*q,:);

J{7,1} = I(2*p:3*p,1:q,:);
J{8,1} = I(2*p:3*p,q : 2*q,:);
J{9,1} = I(2*p:3*p,2*q : 3*q,:);
%分割可视化与图像保存
dos('md G:\图像九宫格裁剪');
figure(1),imshow(I);
figure(2),
for i = 1 : 9
    subplot(3,3,i);
    imshow(J{i,1});
    imwrite(J{i,1},['G:\图像九宫格裁剪\',num2str(i),'.jpg']);
end

输入测试图像为

长手机壁纸

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第2张

输出图像

并写入G盘文件夹

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第3张

转化到朋友圈发送

查看效果

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第4张

可以看到

被裁剪分割后图像已经坏掉了

主要原因是

【图像并不是正方形】

在微信朋友圈

发送九宫格图像

效果最佳时要求图像为方形

因此对上程序进行优化

将图像预处理为方形

但是处理为方形图像

必须增添或裁剪

为了保留全局信息

本文采用了增添的思想

=+=

程序如下

clc
clear all
%图像读取
I = imread('C:\Users\Administrator\Desktop\2.JPG');
%imshow(I);
%预处理
[m,n,z] = size(I);
r = max(m,n);
if m > n
    p = floor((m-n)/2);
    I1 = zeros(m,p,3);
    I2 = [I1,I,I1];
    imshow(I2);
end
if n > m
    p = floor((n-m)/2);
    I1 = zeros(p,n,3);
    I2 = [I1;I;I1];
    imshow(I2);
end
%%
c = floor(r/3);
J = cell(9,1);
%图像九宫格分割
J{1,1} = I2(1:c,1 : c,:);
J{2,1} = I2(1:c,c : 2*c,:);
J{3,1} = I2(1:c,2*c : 3*c,:);

J{4,1} = I2(c:2*c,1:c,:);
J{5,1} = I2(c:2*c,c : 2*c,:);
J{6,1} = I2(c:2*c,2*c : 3*c,:);

J{7,1} = I2(2*c:3*c,1:c,:);
J{8,1} = I2(2*c:3*c,c : 2*c,:);
J{9,1} = I2(2*c:3*c,2*c : 3*c,:);

%分割可视化与图像保存
dos('md G:\图像九宫格裁剪');
figure(1),imshow(I2);
figure(2),
for i = 1 : 9
    subplot(3,3,i);
    imshow(J{i,1});
    imwrite(J{i,1},['G:\图像九宫格裁剪\',num2str(i),'.jpg']);
end

输出图像为

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第5张

转至朋友圈

发送

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第6张

可以看到

效果还是很NICE的

上面是竖长图

相当于手机竖屏拍的照片

对于横屏拍的照片

一样可以应对

测试图像

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第7张

朋友圈展示效果

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第8张

当然

九宫格图像展示

最好将头部置于整张图中

以免

头部被裁剪拉长丑化

如果图片本身就是方形

使用程序一即可

例如

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第9张

九宫格分解以后

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第10张

总之

文中只是一个很简单的设计

在微信当中已有很多小程序

可以实现此功能

后续

我们可以

将程序转化成可执行文件

或者简单的GUI

便于使用

目前也已有图片专门转化为

九宫格形式的客户端

会员价6元

才能使用

此外

在此基础上可以将视频封面等转化为

九宫格显示

LIVE动态图像转化为九宫格

以及转化为其他形式的

裁剪方案

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第11张

THE

END

单图像九宫格形式发送朋友圈_https://bianchenghao6.com/blog__第12张

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复