要求:拍攝樹葉**,正反兩張,提取葉脈,測量葉脈的分支,以及分支的傾斜角。
程式:
clc,close
thresh=[0.13,0.3]; %閾值設定根據影象自定義範圍
sigma=1;%定義高斯引數,1-3
f = edge(double(bw),'canny',thresh,sigma);
figure(1),imshow(f,);
title('canny 邊緣檢測');%canny邊緣運算元
[h, theta, rho]= hough(f,'rhoresolution', 0.5,'thetaresolution',0.75);
%imshow(theta,rho,h,,'notruesize'),axis on,axis normal%霍夫變換空間圖
%xlabel('\theta'),ylabel('rho');
peak=houghpeaks(h,8,'threshold', ceil(0.3*max(h(:)))); %求出顯示霍夫變換矩陣中的8個極值點
hold on
lines=houghlines(f,theta,rho,peak);% 找原圖中的線
figure,imshow(f,),title('hough transform detect result'),hold on
max_len=0;
for k=1:length(lines)
xy=[lines(k).point1;lines(k).point2];
xielv(k)=(lines(k).point2(1)-lines(k).point1(1))/(lines(k).point2(2)-lines(k).point1(2)+0.0001);%求直線斜率
plot(xy(:,1),xy(:,2),'linewidth',4,'color',[.6 .6 .6]); %繪製各條直線
end
ang = atan(xielv)*180/pi%求各條直線角度
原始影象:
canny運算元邊緣檢測結果
霍夫變換取直線結果:
霍夫變換直線結果還是不明顯,對識別度不高。
OpenCV成長之路 直線 輪廓的提取與描述
基於內容的影象分析的重點是提取出影象中具有代表性的特徵,而線條 輪廓 塊往往是最能體現特徵的幾個元素,這篇文章就針對於這幾個重要的影象特徵,研究它們在opencv中的用法,以及做一些簡單的基礎應用。canny邊緣檢測採用雙閾值值法,高閾值用來檢測影象中重要的 顯著的線條 輪廓等,而低閾值用來保證不丟...
Python 文字的特徵提取與描述統計
基於公布的新冠病毒確診患者病例,進行文字特徵提取與描述統計分析。資料形式 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt f open r 你的路徑 新發地.tx...
PCB的各層定義及描述
pcb的各層定義及描述 1 top layer 頂層佈線層 設計為頂層銅箔走線。如為單面板則沒有該層。2 bomttom layer 底層佈線層 設計為底層銅箔走線。3 top bottom solder 頂層 底層阻焊綠油層 頂層 底層敷設阻焊綠油,以防止銅箔上錫,保持絕緣。在焊盤 過孔及本層非電...