如何创建一个二进制图像从原始数据的两列

3视图(30天)
你好,我有以下数据集,它包含两个列。我还附加数据的散点图,第一列是在x轴和第二列是在y轴上。
我想创建一个二进制图像数据集。
我如何用MATLAB

答案(3)

为副总经理
为副总经理 2022年11月2日
这是相似的 之前的答案 ,但在这种情况下,我们需要应对扩展x和y数据。
负载matlab.mat
巨大的= (500 - 500);
%重新调节适合宽度数据,生成指数
dlen =大小(血栓,1);
x0 =血栓(:1);
y0 =血栓(:,2);
x0 =((2)的1)*正常化(x0,“范围”)+ 1;
xidx = 1:巨大的(2);
yidx = interp1 (x0, y0, xidx);
yidx =巨大的(1)-(巨大的(1)1)*正常化(yidx,“范围”);
%显示虚拟图像修复几何
imshow (false(特大号))
%创建ROI对象和配置
投资回报率= images.roi.Polyline (gca);
ROI。位置= [xidx (:) yidx (:));
%转换为逻辑的面具
outpict = createMask (ROI);
imshow (outpict)
注意,中风是在任何时间没有样品。
xidx相同的配置,yidx会使用基本的non-aa折线例子在同一线程。
12个评论
为副总经理
为副总经理 2022年11月9日
如果你知道原来的y的范围,你会恢复的y数据分辨率取决于图像的高度。所有实际的x数据将丢失。这仅仅是一个每个样本点。任何跳跃在x并不代表的形象。
当然,我不知道为什么你会想要恢复的数据图像。即使不均匀的问题x数据不是这样,你仍然会失去信息,将它转换为光栅图像。
%有一个输出图像
inpict = imread (“superwidepict.png”);
%和精度有限存储原始数据范围的引用
y0range = (1.41351 e-05 0.00327854);
%可以恢复每个点的坐标
[yidx ~] =找到(inpict);
%可以重新调节数据单位
yrec = y0range(2),重新调节(yidx 0范围(y0range));
%与原始数据相比
负载matlab.mat
y0 =血栓(:,2);
%比较原始和恢复数据
xl = (1830 - 3196);%看一个特写镜头
yl = (0.0061 - 0.2693) * 1 e - 3;
次要情节(2,1,1)
情节(y0);xlim (xl);ylim(黄)
次要情节(2,1,2)
情节(yrec);xlim (xl);ylim(黄)
%画出错误
情节(y0-yrec)

登录置评。


图像分析
图像分析 2022年11月2日
你想要什么大小的图像在像素呢?行和列多少?
s =负载(“matlab1.mat”)
xy = s.pdw;
x = xy (: 1);
y = xy (:, 2);
次要情节(2,1,1);
情节(x, y,“b”。,“MarkerSize”10);
网格;
%定义你想要的图像的大小
行= 512;
列= 1500;
%重新调节数据
x =重新调节(x 1列);
y y =重新调节(1行);
binaryImage = false(行、列);
k = 1:长度(x)
行=行-轮(y (k)) + 1;
坳=圆(x (k));
binaryImage(行,坳)= true;
结束
次要情节(2,1,2);
imshow (binaryImage);
6个评论
图像分析
图像分析 2022年11月9日
让我们退后一步,问你为什么想要1000二进制图像,甚至是一个二进制图像从你的数据吗?我认为没有必要,你还没有给出任何理由,你只是说你想要的,但是没有理由。原始坐标代表现实中什么?

登录置评。


沃尔特·罗伯森
沃尔特·罗伯森 2022年11月2日
文件名=“matlab.mat”;
datastruct =负载(文件名,“血栓”);
血栓= datastruct.pdw;
targetsize = (930 - 1860);%的行、列
利润= 5;
scaled_x =重新调节(血栓(:1),保证金+ 1,targetsize(2)保证金);
scaled_y =重新调节(血栓(:,2),保证金+ 1,targetsize(1)保证金);
帆布= 0 (targetsize (1) targetsize (2), 3,“uint8”);
r = 3;
xyr = [scaled_x, scaled_y r *的(大小(scaled_x))];
帆布= insertShape(画布,“圆”xyr,“颜色”,“白色”);
二进制=画布(::1)> 0;
%验证
imshow (flipud(二进制))
除了imshow()结束时,这一切都不需要图形系统或创建任何文件。
2的评论
沃尔特·罗伯森
沃尔特·罗伯森 2022年11月2日
(CVT意味着计算机视觉工具箱在这种背景下,和IPT意味着图像处理工具箱)

登录置评。

类别

找到更多的在图像处理和计算机视觉帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!