日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python OpenCV實現測量圖片物體寬度

瀏覽:196日期:2022-07-24 11:06:34

一、 題目描述

測量所給圖片的高度,即上下邊緣間的距離。

Python OpenCV實現測量圖片物體寬度

思路:

將圖片進行閾值操作得到二值化圖片。 截取只包含上下邊框的部分,以便于后續的輪廓提取 輪廓檢測 得到結果

二、 實現過程

1.用于給圖片添加中文字符

#用于給圖片添加中文字符def ImgText_CN(img, text, left, top, textColor=(0, 255, 0), textSize=20): if (isinstance(img, np.ndarray)): #判斷是否為OpenCV圖片類型 img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) draw = ImageDraw.Draw(img) fontText = ImageFont.truetype(r’C:WindowsFontssimsun.ttc’, textSize, encoding='utf-8') ##中文字體 draw.text((left, top), text, textColor, font=fontText) #寫文字 return cv2.cvtColor(np.asarray(img), cv2.COLOR_RGB2BGR)

2.實現圖片反色功能

#實現圖片反色功能def PointInvert(img): height, width = img.shape #獲取圖片尺寸 for i in range(height): for j in range(width): pi = img[i, j] img[i, j] = 255 - pi return img

3.邊緣檢測

# canny邊緣檢測edges = cv2.Canny(th, 30, 70) res=PointInvert(edges) #顏色反轉#顯示圖片cv2.imshow(’original’, th) #顯示二值化后的圖,主題為白色,背景為黑色 更加容易找出輪廓key = cv2.waitKey(0)if key==27: #按esc鍵時,關閉所有窗口 print(key) cv2.destroyAllWindows()

4.輪廓操作

contours, hierarchy = cv2.findContours(th, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) #得到輪廓cnt = contours[0]#取出輪廓x, y, w, h = cv2.boundingRect(cnt) #用一個矩形將輪廓包圍img_gray = cv2.cvtColor(res, cv2.COLOR_GRAY2BGR)#將灰度轉化為彩色圖片方便畫圖cv2.line(img_gray, (x, y), (x + w, y), (0,0,255), 2, 5) #上邊緣cv2.line(img_gray, (x, y+h), (x + w, y+h), (0, 0, 255), 2, 5) #下邊緣img1[80:230, 90:230] = img_gray #用帶有上下輪廓的圖替換掉原圖的對應部分

5.顯示圖片

res1=ImgText_CN(img1, ’寬度%d’%h, 25, 25, textColor=(0, 255, 0), textSize=30) #繪制文字#顯示圖片 cv2.imshow(’original’, res1)key = cv2.waitKey(0)if key==27: #按esc鍵時,關閉所有窗口 print(key) cv2.destroyAllWindows()

6.完整代碼

import cv2import numpy as npfrom PIL import Image, ImageDraw, ImageFont#用于給圖片添加中文字符def ImgText_CN(img, text, left, top, textColor=(0, 255, 0), textSize=20): if (isinstance(img, np.ndarray)): #判斷是否為OpenCV圖片類型 img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) draw = ImageDraw.Draw(img) fontText = ImageFont.truetype(r’C:WindowsFontssimsun.ttc’, textSize, encoding='utf-8') ##中文字體 draw.text((left, top), text, textColor, font=fontText) #寫文字 return cv2.cvtColor(np.asarray(img), cv2.COLOR_RGB2BGR)#實現圖片反色功能def PointInvert(img): height, width = img.shape #獲取圖片尺寸 for i in range(height): for j in range(width): pi = img[i, j] img[i, j] = 255 - pi return imgimg=cv2.imread('gongjian1.bmp',0)#加載彩色圖img1=cv2.imread('gongjian1.bmp',1)#加載灰度圖recimg = img[80:230, 90:230] #截取需要的部分img2 = img1[80:230, 90:230] #截取需要的部分ret, th = cv2.threshold(recimg, 90, 255, cv2.THRESH_BINARY) #閾值操作二值化# canny邊緣檢測edges = cv2.Canny(th, 30, 70) res=PointInvert(edges) #顏色反轉#顯示圖片cv2.imshow(’original’, th) #顯示二值化后的圖,主題為白色,背景為黑色 更加容易找出輪廓key = cv2.waitKey(0)if key==27: #按esc鍵時,關閉所有窗口 print(key) cv2.destroyAllWindows() contours, hierarchy = cv2.findContours(th, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) #得到輪廓cnt = contours[0]#取出輪廓x, y, w, h = cv2.boundingRect(cnt) #用一個矩形將輪廓包圍img_gray = cv2.cvtColor(res, cv2.COLOR_GRAY2BGR)#將灰度轉化為彩色圖片方便畫圖cv2.line(img_gray, (x, y), (x + w, y), (0,0,255), 2, 5) #上邊緣cv2.line(img_gray, (x, y+h), (x + w, y+h), (0, 0, 255), 2, 5) #下邊緣img1[80:230, 90:230] = img_gray #用帶有上下輪廓的圖替換掉原圖的對應部分res1=ImgText_CN(img1, ’寬度%d’%h, 25, 25, textColor=(0, 255, 0), textSize=30) #繪制文字#顯示圖片 cv2.imshow(’original’, res1)key = cv2.waitKey(0)if key==27: #按esc鍵時,關閉所有窗口 print(key) cv2.destroyAllWindows()

三、 運行結果(效果)

Python OpenCV實現測量圖片物體寬度

Python OpenCV實現測量圖片物體寬度

四、 問題及解決方法

紅色輪廓沒有顯示,解決方案:將灰度圖轉化為彩色圖

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区二区精品| 日韩一级网站| 免费看黄色91| 国产一区亚洲| 欧美美女一区| 日韩成人精品一区| 久久精品亚洲人成影院 | 国产精品黄网站| 亚洲一区国产| 日韩区一区二| 久久精品av麻豆的观看方式| 国产日产精品_国产精品毛片 | 国精品产品一区| 日韩高清不卡在线| 97久久中文字幕| 精品国产a一区二区三区v免费| 日韩在线欧美| 日韩美女一区二区三区在线观看| www.51av欧美视频 | 欧美日韩国产v| 久久亚洲专区| 欧美一级久久| 国产在线|日韩| 亚洲一区欧美激情| 美女视频黄免费的久久| 日韩欧美不卡| 亚洲欧美网站| 亚洲欧美日韩国产综合精品二区 | 久久精品av| 亚洲一区久久| 国产精品s色| 国产99久久| 日韩福利视频导航| 久久亚洲精精品中文字幕| 欧美搞黄网站| 国产一区二区三区黄网站| 一区三区视频| 欧美成人aaa| 亚洲精品大片| 一区二区三区四区日韩| 欧美国产精品| 在线综合欧美| 日韩毛片视频| 毛片在线网站| 欧美日韩在线精品一区二区三区激情综合| 精品深夜福利视频| 日韩精品福利一区二区三区| 日韩美女一区二区三区在线观看| 亚洲神马久久| 亚洲无线一线二线三线区别av| 不卡一二三区| 国产探花一区二区| 91精品xxx在线观看| 日韩和欧美一区二区三区| 激情久久久久久久| 黄色在线网站噜噜噜| 国产精品2023| 美国三级日本三级久久99| 韩国精品主播一区二区在线观看 | 麻豆91精品| 久久亚洲一区| 精品一区免费| 红桃视频国产精品| 伊人网在线播放| 高清久久一区| 大香伊人久久精品一区二区| 国产精品网站在线看| 国产视频网站一区二区三区| 国产欧洲在线| 亚洲手机视频| 亚洲视频二区| 国产精品亚洲综合久久| 国产日产精品_国产精品毛片| 爽爽淫人综合网网站| 黄毛片在线观看| 亚洲国产福利| 在线看片福利| 免费在线小视频| 黄色aa久久| 久久久久91| 伊人久久亚洲影院| 水野朝阳av一区二区三区| 美国三级日本三级久久99| 久久av在线| 欧美一区成人| 亚洲我射av| 国产一区二区精品福利地址| 欧美国产三级| 欧美亚洲免费| 中文字幕在线视频久| 欧美美女一区| 免费在线观看不卡| 青青青免费在线视频| 日韩国产91| 久久国产精品免费精品3p| 亚洲狼人精品一区二区三区| 色爱av综合网| 红桃视频欧美| 少妇精品久久久一区二区| 欧美天堂一区二区| 天堂av在线| 丝袜诱惑制服诱惑色一区在线观看| 国产精品毛片| 国产a久久精品一区二区三区| 午夜久久美女| 国产精品最新| 蜜桃av.网站在线观看| 亚洲视频www| 久久国产精品免费一区二区三区| 久久香蕉精品香蕉| 国产精品国产一区| 日本亚洲三级在线| 国产精品1luya在线播放| 久久久水蜜桃av免费网站| 亚洲一二三区视频| 欧美二三四区| 美女尤物久久精品| 欧美日韩精品一区二区三区视频| 久久99精品久久久野外观看| 久久精品av| 深夜日韩欧美| 国产精品亚洲综合在线观看| 亚洲成av人片一区二区密柚| 亚洲精品欧美| 视频在线观看一区| 91青青国产在线观看精品| 97精品视频在线看| 7777精品| 蜜桃一区二区三区在线| 国产一区二区三区网| 精品国产乱码久久久| 日韩国产精品久久久久久亚洲| 国产成人黄色| 日韩 欧美一区二区三区| 国产精品17p| 久久亚洲国产| 国产免费av一区二区三区| 国产农村妇女精品一二区| 国产一区二区色噜噜| 美女网站一区| 成人免费一区| 欧美国产偷国产精品三区| 国产精品扒开腿做爽爽爽软件| 国产女优一区| 午夜久久99| 蜜桃视频免费观看一区| 图片区亚洲欧美小说区| 日韩三区免费| 91精品国产自产精品男人的天堂| 日韩精品一区第一页| 日韩深夜视频| 日韩精品首页| 成人精品亚洲| 国产精品亚洲一区二区三区在线观看| 一本大道色婷婷在线| 久久亚洲精品中文字幕| 久久国产日韩欧美精品| 天堂久久av| 亚洲精品高潮| 欧美激情一区| www.com.cn成人| 亚洲一区日韩在线| 久久xxxx| 国产精品一区毛片| 另类中文字幕国产精品| 91精品推荐| 伊人久久亚洲美女图片| 久久中文字幕av| 日韩欧美一区二区三区在线观看 | 三级亚洲高清视频| 亚洲精品1区| 中文久久精品| 国产伦理久久久久久妇女| 天堂√8在线中文| 欧美sss在线视频| 国产精品日本| 亚洲成人va| 国产高清一区二区| 久久亚洲美女| 亚洲一二av| 欧美aa国产视频| 一区在线观看| 久久99国产精品视频| a日韩av网址| 中文在线日韩| 98精品久久久久久久| 亚洲免费毛片| 九九99久久精品在免费线bt| 国产色综合网| 国产精品videossex| 亲子伦视频一区二区三区| 国产午夜精品一区二区三区欧美 | 欧美日韩国产探花| 麻豆精品网站| 乱一区二区av| 欧美极品一区二区三区| 久久久久伊人| 免播放器亚洲一区| 国产精品原创| 国产不卡精品|