本文主要是介绍Matlab针对图片处理的随机二维坐标生成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Matlab针对图片处理的随机二维坐标生成
今天遇到一个问题,就是想要把图片处理成散点的方式,用opencv什么的不懂,也不是生成3D点云,就是简单的散点,就想通过Matlab的随机数的方式来生成,结果找了半天也没有合适的代码。后来想了想,觉着自己很蠢,可以不局限于图片,可以先根据图片的像素点来生成多个随机数,而后将随机数用到图片里面,来去掉图片中的数值,也就是颜色。
代码如下:
a=randperm(17028,12000);
I=imread('2.png');%imshow(I);
gray=double(rgb2gray(I))
[w,h]=size(gray);
gray(a)=0;
imshow(gray);R=I(:,:,1); %red
G=I(:,:,2); %green
B=I(:,:,3); %blue
R(a)=0;
G(a)=0;
B(a)=0;
%imshow(R);
for i=1:wfor j=1:hblue(i,j,1) = R(i,j);blue(i,j,2) = G(i,j);blue(i,j,3) = B(i,j);end
end
imshow(blue,'border','tight','initialMagnification','fit');
效果是这样的:
就先这样吧,肯定还有更好的方法,希望大神指教
这篇关于Matlab针对图片处理的随机二维坐标生成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!