Image 从二值图像到笛卡尔图像的重复

Image 从二值图像到笛卡尔图像的重复,image,matlab,image-processing,Image,Matlab,Image Processing,我想拍摄一张RGB图像,找到图像中白色的点,然后得到图像中这些点的笛卡尔坐标。我已经得到了大部分的方法,但是当我尝试绘制笛卡尔坐标时,我得到了一个垂直平铺的图像(即我应该看到的5个重叠副本)。有人知道这是什么原因吗 , 代码:(JPG型号为2448 x x326 x 3 uint8) 很简单。您正在声明您的meshgrid错误。应该是: [x, y] = meshgrid( 1:imageSize(2), 1:imageSize(1) ); 第一个参数表示二维栅格的水平范围,因此您希望对尽可能

我想拍摄一张RGB图像,找到图像中白色的点,然后得到图像中这些点的笛卡尔坐标。我已经得到了大部分的方法,但是当我尝试绘制笛卡尔坐标时,我得到了一个垂直平铺的图像(即我应该看到的5个重叠副本)。有人知道这是什么原因吗

,

代码:(JPG型号为2448 x x326 x 3 uint8)


很简单。您正在声明您的
meshgrid
错误。应该是:

[x, y] = meshgrid( 1:imageSize(2), 1:imageSize(1) );
第一个参数表示二维栅格的水平范围,因此您希望对尽可能多的列进行更改。类似地,第二个参数表示二维栅格的垂直范围,因此您希望对尽可能多的行执行此操作

我不得不对你的一些图像进行预处理以获得一些好的结果,因为你的原始图像周围有一个很大的白色边框。我必须通过删除所有纯白色像素来删除此边框。我还直接从StackOverflow中读取图像:

I = imread('http://s7.postimg.org/ovb53w4ff/Track_example.jpg');
mask = all(I == 255, 3);
I = bsxfun(@times, I, uint8(~mask));
这是我在进行预处理后得到的图像:

一旦我这样做并更改您的
meshgrid
调用,我会得到以下结果:


很抱歉出现白色边框-这是将Matlab图形保存为jpg后出现的。谢谢你的回答@lg22woo我想:)当您在MATLAB中以本机方式保存图形时,就会发生这种情况。顺便说一句,我建议您在MatlabFileExchange上使用
export\u fig
工具。将数字保存到磁盘的更好方法:-我已经使用它很多年了!
I = imread('http://s7.postimg.org/ovb53w4ff/Track_example.jpg');
mask = all(I == 255, 3);
I = bsxfun(@times, I, uint8(~mask));