版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
手機(jī)卡托尺寸測(cè)量程序運(yùn)行演示課程引入代碼分析代碼演示一二三目錄能力目標(biāo)檢測(cè)sim卡卡托尺寸,通過計(jì)算尺寸面積確認(rèn)合格與否;知識(shí)目標(biāo)(1)圖像二值化;(2)邊緣提取;(3)像素當(dāng)量、像素?cái)?shù)量轉(zhuǎn)化為物理面積。課程目標(biāo)一課程引入手機(jī)在當(dāng)今的社會(huì)十分的重要,可以說人們已經(jīng)離不開對(duì)手機(jī)的使用了。人們通過插入手機(jī)卡,就可以使用手機(jī)進(jìn)行打電話、發(fā)短信和上網(wǎng)沖浪等,大大豐富了人們的生活。但是手機(jī)卡的使用還要依賴于卡托,如果卡托的尺寸不正確,就會(huì)導(dǎo)致無法順利安裝進(jìn)手機(jī)內(nèi)部,即使安裝進(jìn)去了,也會(huì)導(dǎo)致手機(jī)無法識(shí)別手機(jī)卡的信息,需要正常使用的話,需要用戶到相應(yīng)地方進(jìn)行更換,給用戶帶來很大的麻煩。在當(dāng)今對(duì)卡托需求量很大的情況下,人工檢測(cè)的工作量是很大的,而且容易在檢測(cè)過程中造成視覺疲勞,大大增加了產(chǎn)品的不合格率。數(shù)字圖像處理技術(shù)的檢測(cè)方面已經(jīng)被廣泛應(yīng)用了。為了提高卡托生產(chǎn)的合格率,本案例將展開對(duì)卡托尺寸檢測(cè)技術(shù)的討論,通過計(jì)算尺寸面積確定產(chǎn)品合格與否。二代碼分析
在Opencv中可直接使用函數(shù)cv2.cvColor()將彩色圖像轉(zhuǎn)為其它類型的圖像。其語法格式為:dst=cv2.cvtColor(src,code[,dstCn])式中:dst表示輸出圖像,與原始輸入圖像具有同樣的數(shù)據(jù)類型和深度。Src表示原始輸入圖像??梢允?位無符號(hào)圖像、16位無符號(hào)圖像,或者單精度浮點(diǎn)數(shù)等。Code是色彩空間轉(zhuǎn)換碼,常用的有:cv2.COLOR_BGR2GRAY#彩色圖像轉(zhuǎn)換為灰度圖cv2.COLOR_GRAY2BGR#灰度圖像轉(zhuǎn)換為彩色圖cv2.COLOR_BGR2RGB#BGR彩色圖像轉(zhuǎn)換為RGB彩色圖dstCn是目標(biāo)圖像的通道數(shù)。如果參數(shù)為默認(rèn)的0,則通道數(shù)自動(dòng)通過原始輸入圖像和code得到。圖像灰度化二代碼分析
在Opencv中可使用cv2.threshold()函數(shù)進(jìn)行閾值化處理,該函數(shù)的語法格式為:Retval,dst=cv2.threshold(src,thresh,maxval,type)式中:retval代表返回的閾值。dst代表閾值分割結(jié)果圖像,與原始圖像具有相同的大小和類型。src代表要進(jìn)行閾值分割的圖像,可以是多通道的,8位或32位浮點(diǎn)型數(shù)值。thresh代表要設(shè)定的閾值。maxval代表當(dāng)type參數(shù)為THRESH_BINARY或者THRESH_BINARY_INV類型時(shí),需要設(shè)定的最大值。type代表閾值分割的類型,具體類型值如表所示。圖像二值化
二代碼分析一個(gè)輪廓對(duì)應(yīng)著一系列的點(diǎn),這些點(diǎn)以某種方式表示圖像中的一條曲線。在Opencv中,函數(shù)cv2.findContours()用于查找圖像的輪廓,并能夠根據(jù)參數(shù)返回特定表示方式的輪廓(曲線)。函數(shù)cv2.drawContours()能夠?qū)⒉檎业降妮喞L制到圖像上,該函數(shù)可以根據(jù)參數(shù)在圖像上繪制不同樣式(實(shí)心/空心點(diǎn),以及線條的不同粗細(xì)、顏色等)的輪廓,可以繪制全部輪廓也可以僅繪制制定的輪廓。函數(shù)cv2.findContours()的語法格式為:image,contours,hierarchy=cv2.findContours(image,mode,method)式中的返回值為:image:與函數(shù)參數(shù)中的原始圖像image一致。contours:返回的輪廓。hierarchy:圖像的拓?fù)湫畔ⅲㄝ喞獙哟危J街械膮?shù)為:image:原始圖像。8位單通道圖像,所以非零值被處理為1,所有零值保持不變。也就是說灰度圖像會(huì)被自動(dòng)處理為二值圖像。在實(shí)際操作時(shí),可以根據(jù)需要,預(yù)先使用閾值處理等函數(shù)將待查找輪廓的圖像處理為二值圖像。mode:輪廓檢索模式。method:輪廓的近似方法。輪廓提取
二代碼分析函數(shù)cv2.drawContours()的語法格式是:image=cv2.drawCountours(image,contours,contourIdx,color[,thickness[,lineType[,hierarchy[,maxLevel[,offset]]]]])其中,函數(shù)的返回值為image,表示目標(biāo)圖像,即繪制了邊緣的原始圖像。式中:image:待繪制輪廓的圖像。contours:需要繪制的輪廓。contourIdx:需要繪制的邊緣索引,告訴函數(shù)cv2.drawContours()要繪制某一條輪廓還是全部輪廓。color:繪制的顏色,用BGR格式表示。thickness:可選參數(shù),表示繪制輪廓時(shí)所用畫筆的粗細(xì)。lineType:可選參數(shù),表示繪制輪廓時(shí)所用的線型。hierarchy:對(duì)應(yīng)函數(shù)cv2.drawContours()所輸出的層次信息。maxLevel:控制所繪制的輪廓層次的深度。Offset:偏移參數(shù)。該參數(shù)使輪廓偏移到不同的位置展現(xiàn)出來。輪廓提取
二代碼分析函數(shù)cv2.arcLength()用于計(jì)算輪廓的長(zhǎng)度,其語法格式為:retval=cv2.arcLength(curve,closed)式中返回值retval是輪廓的周長(zhǎng)。curve是輪廓。Closed是布爾型值,用來表示輪廓是否是封閉的。該值為Ture時(shí),表示輪廓是封閉的。函數(shù)cv2.contourArea()用于計(jì)算輪廓的面積。該函數(shù)的語法格式為:retval=cv2.contourArea(contour[,oriented])式中的返回值retval是面積值。式中有兩個(gè)參數(shù):contour是輪廓。Oriented是布爾型值。當(dāng)它為True時(shí),返回的值包含正/負(fù)號(hào),用來表示輪廓是順時(shí)針還是逆時(shí)針的。該參數(shù)的默認(rèn)值是False,表示返回的retval是一個(gè)絕對(duì)值。計(jì)算周長(zhǎng)和面積
二代碼分析在Opencv中可以使用cv2.putText()函數(shù)在圖片中添加文本。如本案例中的cv2.putText(newing,str(i),(375,150),font,1,(0,255,0))各參數(shù)依次為圖片,添加的文本,左上角坐標(biāo),字體,字體大小,顏色。寫入邊數(shù)值
#轉(zhuǎn)灰度圖片
img=cv2.imread(path)
new_img=cv2.imread(path)
img=cv2.resize(img,(640,480))
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
#
圖像二值化
ret,binary=cv2.threshold(gray,127,255,cv2.THRESH_BINARY)灰度圖二值圖圖像二值化三代碼演示#輪廓檢測(cè)contours,hierarchy=cv2.findContours(binary,cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE)#繪制輪廓newimg=cv2.resize(newimg,(640,480))#只保留邊框cv2.drawContours(newimg,contours[1],-1,(255,0,255),3)二值圖輪廓提取圖輪廓提取三代碼演示x,y,w,h=cv2.boundingRect(contours[1])cv2.rectangle(newimg,(x,y),(x+w,y+h),(0,255,0),2)輪廓提取圖繪制邊框繪制邊框三代碼演示#計(jì)算周長(zhǎng)perimeter=cv2.arcLength(contours[1],True)#計(jì)算面積area=cv2.contourArea(contours[1])計(jì)算周長(zhǎng)和面積三代碼演示#寫入邊數(shù)值font=cv2.FONT_HERSHEY_SIMPLEXcv2.putText(newimg,str(h),(375,150),font,1,(0,255,0))cv2.putText(newimg,str(h),(175,150),font,1,(0,255,0))cv2.putText(newimg,str(w),(275,50),font,1,(0,255,0))cv2.putText(newimg,str(w),(275,305),font,1,(0,255,0))cv2.putText(newimg,str(perimeter),(0,15),font,0.5,(255,0,255))cv2.putText(newimg,str(area),(0,30),font,0.5,(255,0,255))cv2.putText(newimg,str(w*2+h*2),(0,45),font,0.5,(0,255,0))寫入邊數(shù)值三代碼演示計(jì)算三角形區(qū)域后三代碼演示tri_data1="a:"+str(a)+"b:"+str(b)+"c:"+str(c)tri_data2="d1:"+str(d1)+"d2:"+str(d2)cv2.putText(new_img,tri_data1,(0,60),font,0.5,(255,255,0))cv2.putText(new_img,tri_data2,(0,75),font,0.5,(255,255,0))cv2.putText(new_img,str(h),(375,180),font,1,(255,0,255))cv2.putText(new_img,str(h-a),(175,180),font,1,(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年度航空航天發(fā)動(dòng)機(jī)采購合同范本與性能測(cè)試要求3篇
- 2025年新能源發(fā)電項(xiàng)目長(zhǎng)期合作協(xié)議范本3篇
- 2025年度磚廠智能化物流承包服務(wù)協(xié)議3篇
- 中北大學(xué)《教育原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 專業(yè)化木門買賣簡(jiǎn)易協(xié)議范例2024版A版
- 長(zhǎng)春早期教育職業(yè)學(xué)院《武術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年貨物與服務(wù)采購協(xié)議細(xì)則一
- 2024年股權(quán)投資協(xié)議:攜手共進(jìn)共創(chuàng)輝煌
- 《w心態(tài)的茶館》課件
- 2024美團(tuán)商家合同電子版爭(zhēng)議解決機(jī)制規(guī)范3篇
- 《榜樣9》觀后感心得體會(huì)二
- 2024年公安機(jī)關(guān)理論考試題庫附參考答案(基礎(chǔ)題)
- 2023年高考文言文閱讀設(shè)題特點(diǎn)及備考策略
- 暖通工程合同
- 生產(chǎn)型企業(yè)規(guī)章管理制度(3篇)
- 鋼結(jié)構(gòu)之樓承板施工方案流程
- 2024年?duì)I銷部工作人員安全生產(chǎn)責(zé)任制(2篇)
- (正式版)SHT 3046-2024 石油化工立式圓筒形鋼制焊接儲(chǔ)罐設(shè)計(jì)規(guī)范
- 志愿服務(wù)證明(多模板)
- 游戲綜合YY頻道設(shè)計(jì)模板
- 食材配送投標(biāo)服務(wù)方案
評(píng)論
0/150
提交評(píng)論