早教吧 育儿知识 作业答案 考试题库 百科 知识分享

matlab图像处理编程1)按行扫描边缘二值图像,若该行像素点灰度值全为0,则检测下一行,否则执行下一步。2)若检测到某像素点灰度值为255,则判断其右边像素点灰度值是否为255。若是

题目详情
matlab 图像处理编程
1)按行扫描边缘二值图像,若该行像素点灰度值全为0,则检测下一行,否则执行下一步。  2)若检测到某像素点灰度值为255,则判断其右边像素点灰度值是否为255。若是,则跳过该行不检测,继续检测下一行;否则,执行下一步。  3)已经检测到左边缘点的坐标,继续该行的检测,扫描右边缘点。如果检测到,则计算两边缘点问的距离并保存,继续检测下一行;否则直接继续检测下一行。
(用matlab编程上面的句子)
▼优质解答
答案和解析
这个是扫描算法吧,试着做了一下,希望有所帮助。clc; clear all; close all;
I = imread('rice.png');
I = im2bw(I, graythresh(I)); % 二值化
I = im2uint8(I);
[r, c] = size(I);
D = [];
for i = 1 : r
% 按行扫描边缘二值图像
ri = I(i, :);
if ~any(ri)
% 若该行像素点灰度值全为0,则检测下一行,否则执行下一步
continue;
end
for j = 1 : c-1
if ri(j) == 255
% 若检测到某像素点灰度值为255
s1 = [j, i];
if ri(j+1) == 255
% 则判断其右边像素点灰度值是否为255。若是,则跳过该行不检测
break;
else
% 否则,执行下一步。
% 已经检测到左边缘点的坐标,继续该行的检测,扫描右边缘点。
% 如果检测到,则计算两边缘点问的距离并保存,继续检测下一行;
% 否则直接继续检测下一行。
j = j + 1;
s2 = [j, i];
d = norm(s1-s2);
D = [D d];
break;
end
end
end
end
看了 matlab图像处理编程1)...的网友还看了以下:

二价铁用什么来检验是否被氧化完全在含有二价铁的溶液中用双氧水氧化怎样判断是否氧化完全,溶液为有色溶  2020-05-15 …

无创产检DNA检测是否准确,真能确定出是否是唐氏胎儿吗?患者信息:女 26岁 北京 东城区 病情描  2020-05-17 …

关于蛋白和RNA--干细胞转化心肌我现在做的是干细胞向心肌细胞转化,想选择cTnt进行免疫组化来检  2020-05-17 …

农村饮用水如何检测是否标准我们是住一个镇里,水是镇里打的深井,利用无塔供水设备集体供应的.但是每次  2020-05-17 …

验室用()和()来制取二氧化碳,因为二氧化碳(),所以可以用()来收集,检验是否收集  2020-05-22 …

检验是否含CHO检验某化合物是否含有碳、氢、氧三种元素,在该物质燃烧前后还必须进行的是1.用带火星  2020-05-23 …

果汁发酵后,检测是否有酒精产生,可采用的方法有()A.用斐林试剂检侧B.用重铬酸钾溶液检测C.取样  2020-06-10 …

能够检验细胞液中是否含有蛋白质的方法最好是()A.研磨组织细胞,检验研磨液中是否存在蛋白质B.分离细  2020-12-04 …

某公司要求新开发的产品在进入市场前必须进行两轮质检,只有两轮都合格才能进行销售,否则不能销售,已知某  2020-12-09 …

用计算机程序解决问题时调试运行程序和检测结果的目的A前者用于检测语法是否正确后者检查能否按要求完成任  2020-12-14 …