2021亚太杯A题
2021亚太杯A题
文章目录
第一问官方提到的两个算子第二问第三问
第一问官方提到的两个算子
题目中提到了canny算子边缘检测,我们先不管它有没有用,我把python的代码先送给大家:python边缘检测
sobel算法也送大家:python sobel算法边缘检测
同时也提供了matlab版本:matlab 边缘检测的两种算法
再送大家一个新的代码:
=imread('Pic1_1.bmp');imshow(X1)title('原始图')imhist(X1)%图像数据的直方图title('直方图')XX1=imbinarize(X1);%通过阈值化将二维灰度图像或三维体二值化imshow(XX1)title('灰度图')Ig=XX1;%获取算子s=GetStrelList();%串联去噪e=ErodeList(Ig,s);%计算权重f=GetRateList(Ig,e);%并联Igo=GetRemoveResult(f,e);%计算PSNR值psnr1=PSNR(XX1,e.eroded_co12);psnr2=PSNR(XX1,e.eroded_co22);psnr3=PSNR(XX1,e.eroded_co32);psnr4=PSNR(XX1,e.eroded_co42);psnr5=PSNR(XX1,Igo);psnr_list=[psnr1 psnr2 psnr3 psnr4 psnr5];M{1,1}=e.eroded_co12;M{1,2}=e.eroded_co22;M{1,3}=e.eroded_co32;M{1,4}=e.eroded_co42;M{1,5}=Igo;figureplot(1:5,psnr_list,'r+-');set(gca,'XTick',0:6,'XTickLabel',{'','串联1','串联2','串联3','串联4','并联',''});grid on;title('PSNR曲线比较')[~,b]=max(psnr_list);result=M{1,b};figureresult=imbinarize(result,'adaptive');Y1=bwperim(result);%在二进制图像中查找对象的周长imshow(Y1)title('边缘检测')
结果:
后面又要对直线曲线检测,直线建议使用:Matlab实现Hough变换检测图像中的直线,参考代码:
all;clear all;I = imread('scratch.tif');figure;subplot(1,3,1);imshow(I);BW = edge(I,'canny');%Canny方法提取图像边界,返回二值图像(边界1,否则0)[H,T,R] = hough(BW);%计算二值图像的标准霍夫变换,H为霍夫变换矩阵,I,R为计算霍夫变换的角度和半径值subplot(1,3,2);imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');%hough变换的图像xlabel('\theta'), ylabel('\rho');axis on,axis square,hold on;P = houghpeaks(H,3);%提取3个极值点x = T(P(:,2)); y = R(P(:,1));plot(x,y,'s','color','white');%标出极值点lines=houghlines(BW,T,R,P);%提取线段subplot(1,3,3);imshow(I), hold on;for k = 1:length(lines)xy = [lines(k).point1; lines(k).point2]; plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','green');%画出线段plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');%起点plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');%终点end
不是要提取圆弧,直线轮廓嘛,找到一个还可以的链接,自己打开看看就知道了,具体怎么实现应该可以根据对应的函数百度,自己去实现:
http://blog.sina.com-/s/blog_c01c55220102ypsx.html
第二问
图像校正简直如法炮制,直接参考链接:
轮廓长度…我也还不会,等更新哇
第三问
轮廓分割在第一问已经求出来了,如果你根据我的提示领悟好,你已经做出来了。
主要用到了什么?HALCON根据我的提示去领悟吧。(百度啊)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~