




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、改進(jìn)的canny算法importpic_processaspreimg=plt.imread(many.jpg)image=img.copy()sigmal=sigma2=1sum=0gaussian=np.zeros(5,5)foriinrange(5):forjinrange(5):gaussiani,j=math.exp(-1/2*(np.square(i-3)/np.square(sigma1)#生成二維高斯分布矩陣+(np.square(j-3)/np.square(sigma2)/(2*math.pi*sigmal*sigma2)sum=sum+gaussiani,jgaussia
2、n=gaussian/sumprint(gaussian)defrgb2gray(rgb):returnnp.dot(rgb,:3,0.299,0.587,0.114)stepl.高斯濾波#gray=rgb2gray(img)gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)#gray=cv2.equalizeHist(gray)W,H=gray.shapenew_gray=np.zeros(W-5,H-5)foriinrange(W-5):forjinrange(H-5):grayi,j=np.sum(grayi:i+5,j:j+5*gaussian)#與高斯
3、矩陣卷積實(shí)現(xiàn)濾波W,H=gray.shapenew_gray=np.zeros(W-5,H-5)foriinrange(W-5):forjinrange(H-5):new_grayi,j=np.sum(grayi:i+5,j:j+5*gaussian)#與高斯矩陣卷積實(shí)現(xiàn)濾波plt.imshow(new_gray,cmap=gray)step2.增強(qiáng)通過(guò)求梯度幅值W1,H1=new_gray.shapedx=np.zeros(W1-1,H1-1)dy=np.zeros(W1-1,H1-1)dx2=np.zeros(W1-1,H1-1)dy2=np.zeros(W1-1,H1-1)d=np.ze
4、ros(W1-1,H1-1)foriinrange(W1-1):forjinrange(H1-1):dxi,j=(2*new_grayi,j+1-2*new_grayi,j-1+grayi-1,j+1-grayi-1,j-1+new_grayi+1,j+1-new_grayi+1,j-1)dyi,j=(2*new_grayi+1,j-2*new_grayi-1,j+grayi+1,j+1-grayi-1,j+1+new_grayi+1,j-1-new_grayi-1,j-1)dxi,j=new_grayi,j+1-new_grayi,jdyi,j=new_grayi+1,j-new_grayi
5、,jdxi,j=new_grayi,j+1-new_grayi,j+new_grayi+1,j+1-new_grayi+1,jdyi,j=new_grayi+1,j-new_grayi,j+new_grayi+1,j+1-new_grayi,j+1#dx2i,j=new_grayi+1,j+1-new_grayi,jdy2i,j=new_grayi-1,j+1-new_grayi,jdy2i,j=new_grayi-1,j+1-new_grayi,jdxi,j=new_grayi,j+1-2*new_grayi,j+new_grayi,j-1dyi,j=new_grayi+1,j-2*new_
6、grayi,j+new_grayi-1,jdi,j=np.sqrt(np.square(dxi,j)+np.square(dyi,j)#圖像梯度幅值作為圖像強(qiáng)度值#di,j=np.sqrt(np.square(dxi,j)+np.square(dyi,j)+np.square(dx2i,j)+np.square(dy2i,j)#圖像梯度幅值作為圖像強(qiáng)度值plt.imshow(d,cmap=gray)setp3.非極大值抑制NMSW2,H2=d.shapeNMS=np.copy(d)NMS0,:=NMSW2-1,:=NMS:,0=NMS:,H2-1=0p=0.5foriinrange(1,W2-
7、1):forjinrange(1,H2-1):ifdi,j=0:NMSi,j=0else:gradX=dxi,jgradY=dyi,jgradTemp=di,j#如果Y方向幅度值較大ifnp.abs(gradY)np.abs(gradX):weight=np.abs(gradX)/np.abs(gradY)grad2=di,j+p*(di-1,j-di,j)grad4=di,j+p*(di+1,j-di,j)#如果x,y方向梯度符號(hào)相同ifgradX*gradY0:grad1=di,j-1+p*(di-1,j-1-di,j-1)grad3=di,j+1+p*(di+1,j+1-di,j+1)#
8、如果x,y方向梯度符號(hào)相反else:grad1=di,j+1+p*(di-1,j+1-di,j+1)grad3=di,j-1+p*(di+1,j-1-di,j-1)#如果X方向幅度值較大else:weight=np.abs(gradY)/np.abs(gradX)grad2=di,j+p*(di,j-1-di,j)grad4=di,j+p*(di,j+1-di,j)#如果x,y方向梯度符號(hào)相同ifgradX*gradY0:grad1=di+1,j+p*(di-1,j+1-di+1,j)grad3=di-1,j+p*(di-1,j+1-di-1,j)#如果x,y方向梯度符號(hào)相反else:grad
9、1=di-1,j+p*(di-1,j-1-di-1,j)grad3=di+1,j+p*(di+1,j+1-di+1,j)gradTemp1=weight*p*grad1+(1-weight*p)*grad2gradTemp2=weight*p*grad3+(1-weight*p)*grad4ifgradTemp=gradTemp1andgradTemp=gradTemp2:NMSi,j=gradTempelse:NMSi,j=0#plt.imshow(NMS,cmap=gray)#hist=cv2.calcHist(NMS,0,None,256,0,256)#hist=cv2.calcHist
10、(NMS,0,None,256,0,256)#util.image_read(NMS)arr=NMS.flatten()arrs=foriinarr:ifi!=0andi!=255:arrs.append(i)#arrs=arrprint(hk,NMS.shape)n,bins,patches=plt.hist(arrs,bins=256,normed=1,facecolor=green,alpha=0.75)a,b=pre.OTSU(arrs)print(a,b)plt.show()#print(arr)#step4.雙閾值算法檢測(cè)、連接邊緣W3,H3=NMS.shapeDT=np.zero
11、s(W3,H3)#定義高低閾值TL=0.15*np.max(NMS)TH=0.3*np.max(NMS)print(叮HTH,TH)TL=(2/3)*bTH=bforiinrange(1,W3-1):forjinrange(1,H3-1):if(NMSi,jTH):DTi,j=255elif(NMSi-1,j-1:j+1TH).any()or(NMSi+1,j-1:j+1).any()or(NMSi,j-1,j+1best_M:best_M=M;best_k=k;returnbest_M,best_kfromskimageimportdata,exposure,img_as_floatdefg
12、et_image(path):#獲取圖片img=cv.imread(path)gray=cv.cvtColor(img,cv.C0L0R_BGR2GRAY)returnimg,graydefsmothing(gray):#均衡化gray=exposure.adjust_gamma(gray,0.8)img1=cv.equalizeHist(gray)img1=cv.equalizeHist(img1)aussian=cv.GaussianBlur(img1,(5,5),1)dst=cv.medianBlur(aussian,5)#dst=cv.medianBlur(dst,7)#dst=min
13、.max_min_valueilter(dst,ksize=2,mode=2)#dst=min.fillHole(dst)”銳化”#kernel=np.array(0,-1,0,-1,5,-1,0,-1,0,np.float32)#銳化#dst=cv.filter2D(dst,-1,kernel=kernel)#blurred=cv2.GaussianBlur(gray,(3,3),0)returndstdefThresh_and_blur(gray,gradient):defThresh_and_blur(gray,gradient):#blurred=cv2.GaussianBlur(gr
14、adient,(5,5),0)#(_,thresh)=cv2.threshold(blurred,0,255,cv2.THRESH_BINARY)#otsuM,k=OTSU(gradient)print(M,k)ret,thresh=cv.threshold(gray,k,255,cv.THRESH_BINARY)returnthreshdefimage_morphology(thresh):#建立一個(gè)橢圓核函數(shù)kernel=cv.getStructuringElement(cv.MORPH_ELLIPSE,(3,3)thresh=cv.dilate(thresh,kernel,iterations=1)closed=cv.erode(thresh,kernel,iterations=2)#腐蝕#closed=cv.morphologyEx(closed,cv.MORPH_ELLIPSE,kernel)opening=cv.mor
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030納濾膜行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及競(jìng)爭(zhēng)格局與投資戰(zhàn)略研究報(bào)告
- 2025-2030立式珩磨機(jī)行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030磁共振填隙線圈行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030眼部磁療按摩器行業(yè)發(fā)展分析及投資價(jià)值研究咨詢報(bào)告
- 2025-2030電子書行業(yè)市場(chǎng)發(fā)展分析與發(fā)展前景及投資戰(zhàn)略研究報(bào)告
- 2025-2030生物質(zhì)行業(yè)市場(chǎng)深度調(diào)研及前景趨勢(shì)與投資研究報(bào)告
- 2025-2030游泳池水泵行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030洗手液行業(yè)市場(chǎng)深度分析及前景趨勢(shì)與投資研究報(bào)告
- 2025-2030橡膠行業(yè)風(fēng)險(xiǎn)投資發(fā)展分析及投資融資策略研究報(bào)告
- 2025-2030新能源電池行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及發(fā)展前景與投資研究報(bào)告
- 行政區(qū)域代碼表Excel
- GB/T 13553-1996膠粘劑分類
- 第5課時(shí) 中國(guó)古代官員的選拔與管理 課件 高三歷史統(tǒng)編版(2019)選擇性必修一國(guó)家制度與社會(huì)治理一輪復(fù)習(xí)
- 2022年大悟縣網(wǎng)格員招聘筆試試題及答案解析
- 英語(yǔ)泛讀教程第四冊(cè)Unit 8 Holocaust課件
- 國(guó)際學(xué)校標(biāo)準(zhǔn)入學(xué)測(cè)試題
- DB21T 3532-2021 植保無(wú)人機(jī)釋放赤眼蜂防治水稻二化螟技術(shù)規(guī)程
- 例行檢驗(yàn)確認(rèn)檢驗(yàn)設(shè)備運(yùn)行檢查規(guī)范
- 招商證券公司客戶服務(wù)標(biāo)準(zhǔn)手冊(cè)
- 西南交通大學(xué)《行車組織》區(qū)段站工作組織課程設(shè)計(jì)(附大圖)
- 康復(fù)治療技術(shù)(康復(fù)養(yǎng)老服務(wù))專業(yè)群建設(shè)方案
評(píng)論
0/150
提交評(píng)論