基于图像形态学处理和Sobel边缘提取的鱼类结构提取方法
创作时间:
作者:
@小白创作中心
基于图像形态学处理和Sobel边缘提取的鱼类结构提取方法
引用
CSDN
1.
https://blog.csdn.net/Simuworld/article/details/144860841
本文介绍了一种基于图像形态学处理和Sobel边缘提取的鱼类结构提取方法。通过MATLAB实现,该方法能够有效地去除背景干扰,提取鱼类的轮廓和结构特征。
1. 算法仿真效果
使用MATLAB 2022a进行仿真的结果如下:
2. MATLAB程序
以下是实现该算法的MATLAB代码:
% 读取图片
I0 = imread('images\1.jpg');
I1 = I0;
% 提取鱼区域
% step1: 去除背景中的黑色字体
[R, C, K] = size(I0);
PIX = mean2(I1(500:R/4,500:C/4,1));
% 提取背景像素值范围
for i = 1:R
for j = 1:C
if I0(i,j,1) < 50 & I0(i,j,2) < 50 & I0(i,j,3) < 60 & i <= 0.35*R
I1(i,j,1) = PIX;
I1(i,j,2) = PIX;
I1(i,j,3) = PIX;
end
end
end
for i = 1:10:R1-R2+1
i
idy = 0;
idx = idx + 1;
for j = 1:10:C1-C2+1
idy = idy + 1;
tmp0 = tmp1(i:i+R2-1,j:j+C2-1);
SAD(idx,idy) = mean2(tmp0-tmp2);
end
end
[X,Y]=find(SAD==min(min(SAD)));
I2 = I1(10*X-100:min(10*X+R2+100,R1),10*Y-100:min(10*Y+C2+100,C1),:);
Xs = 10*X-100;
Xe = min(10*X+R2+100,R1);
Ys = 10*Y-100;
Ye = min(10*Y+C2+100,C1);
figure;
subplot(311);
imshow(I0);
subplot(312);
imshow(I1);
subplot(313);
imshow(I2);
save R1.mat I2 X Y Xs Xe Ys Ye
3. 算法概述
第一部分:鱼提取
首先通过像素判断去除鱼的背景因素,包括白色背景和蓝色字体背景。然后将提取的鱼进行颜色分解(RGB转HSV),使用S通道进行二值化处理(im2bw函数),并去除图像中的小噪声(bwareaopen函数)。接着进行填充处理,将鱼区域中的小空洞填充,并通过腐蚀操作消除边缘不平稳的部分,实现鱼的抠图。
第二部分:鱼边缘提取和记录计算
使用Sobel算子进行边缘提取(edge函数),提取鱼的边缘轮廓。然后定位边缘坐标点,首先确定鱼嘴巴上的点,根据鱼身体各部分比例依次提取其他点的位置。后续内容主要涉及坐标点坐标和距离的计算。
4. 部分参考文献
[1] 赵来刚,陈道炯.一种基于Sobel算子的新型边缘提取技术[J].机械与电子, 2011(2):59-61.DOI:10.3969/j.issn.1001-2257.2011.02.016.
热门推荐
“996”工作制违法,为何仍屡禁不止?
岳麓山:一座四季皆美的文化名山
长沙的冬天:湿冷与温暖并存的季节
双十一省钱秘籍:高效规划国内游
成都自驾游:四姑娘山&巴郎山绝美打卡地!
手机投屏功能全面解析:实现高效共享的最佳指南
996 vs 007:哪种工作制更伤身?
告别996,拥抱高效工作的平衡艺术
拼多多员工猝死后,“996”再引热议:高强度工作制下的健康危机
996是福报还是压榨?大佬们的观点引发深思
防爆胎和普通轮胎在安全性上有何区别?
广东春节:岭南文化的独特魅力
韶关南岭冬景:雪国仙境打卡地
拼多多员工猝死事件背后的996真相:一场健康与人性的双重危机
腾讯带头反996,员工效率真的会下降吗?
996工作制:职场人的心血管保卫战
李开复:从996到生活平衡的觉醒之路
阿托伐他汀:守护心脏健康的秘密武器?
低胆固醇饮食+阿托伐他汀:科学降脂新趋势
精鸭腿配斑马精酿:完美啤酒鸭攻略
随心煮意教你轻松做啤酒鸭腿!
《长安三万里》中的李白:四段婚姻背后的理想与现实
李白的“倒插门”婚姻:一段被历史铭记的文人佳话
北京南到故宫地铁最佳路线
阿新导游带你玩转重庆必打卡景点
重庆旅行必打卡!跟着本地导游玩转山城
哈佛研究证实:积极心态是职场成功的金钥匙
职场妈妈如何应对抑郁?从压力源到应对策略的全面解析
职场人士如何应对市场变化?
春节焦虑症:大学生如何应对?