<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文是OpenCV影象視覺入門之路的第11篇文章,本文詳細的在影象形態學進行了影象處理,例如:腐蝕操作、膨脹操作、開閉運算、梯度運算、Top Hat Black Hat運算等操作。
從下面程式碼中可以看到有三幅腐蝕程度不同的圖,腐蝕越嚴重畫素就越模糊
import cv2 import numpy as np from numpy import unicode if __name__ == '__main__': img1 = cv2.imread("D:/Jupyter_Notebooks/0.jpg") # 讀取彩色影象(BGR) kernel = np.ones((3, 3), np.uint8) erosion = cv2.erode(img1, kernel) cv2.imshow("img1", erosion) # 顯示疊加影象 dst img2 = cv2.imread("D:/Jupyter_Notebooks/0.jpg") # 讀取彩色影象(BGR) kernel = np.ones((10, 10), np.uint8) erosion_1 = cv2.erode(img2, kernel) cv2.imshow('erosion_1', erosion_1) img3 = cv2.imread("D:/Jupyter_Notebooks/0.jpg") # 讀取彩色影象(BGR) kernel = np.ones((30, 30), np.uint8) erosion_2 = cv2.erode(img3, kernel) cv2.imshow('erosion_2', erosion_2) cv2.waitKey(0) cv2.destroyAllWindows()
binary_img = np.array([ [0, 0, 0, 0, 0], [0,255,255,255,0], [0,255,255,255,0], [0,255,255,255,0], [0, 0, 0, 0, 0]],np.uint8) ones((3,3),np.uint8) [[ 0 0 0 0 0] [ 0 0 0 0 0] [ 0 0 255 0 0] [ 0 0 0 0 0] [ 0 0 0 0 0]]
通過上面的例子發現,經過3x3的kernel之後,最終只保留了中心的255畫素,周邊的255都變成了0。在進行腐蝕操作的時候,就是通過kernel大小的折積在原影象上滑動,只有當kernel範圍內的畫素全為255時輸出才為255,否則輸出為0,所以kernel越大最終白色畫素保留的會越少。
影象經過膨脹之後,白色畫素的範圍變大了。在做膨脹的時候,只要當kernel範圍內的畫素有255時輸出就為255。
開運算其實就是先通過腐蝕操作後面再進行膨脹,閉運算和開運算恰好相反先通過膨脹操作後面再進行腐蝕。
import cv2 import numpy as np from numpy import unicode if __name__ == '__main__': img1 = cv2.imread("D:/Jupyter_Notebooks/0.jpg") # 讀取彩色影象(BGR) # 定義kernel kernel = np.ones((3, 3), np.uint8) # 開運算 open_img = cv2.morphologyEx(img1, cv2.MORPH_OPEN, kernel) # 閉運算 close_img = cv2.morphologyEx(img1, cv2.MORPH_CLOSE, kernel) cv2.imshow("open_img", open_img) # 顯示疊加影象 dst cv2.imshow("close_img", close_img) # 顯示疊加影象 dst cv2.waitKey(0) cv2.destroyAllWindows()
梯度運算等價於膨脹運算-腐蝕運算 梯度運算主要是用來保留影象的輪廓
Top Hat運算等價於原始影象 - 開運算,Black Hat運算等價於閉運算 - 原始影象
形態學Top-Hat變換是指形態學頂帽操作與黑帽操作,前者是計算源影象與開運算結果圖之差,後者是計算閉運算結果與源影象之差。
形態學Top-Hat變換是常用的一種濾波手段,具有高通濾波的某部分特性,可實現在影象中檢測出周圍背景亮結構或周邊背景暗結構。
頂帽操作常用於檢測影象中的峰結構。
黑帽操作常用於檢測影象中的波谷結構。
import cv2 import numpy as np from numpy import unicode if __name__ == '__main__': img1 = cv2.imread("D:/Jupyter_Notebooks/0.jpg") # 讀取彩色影象(BGR) # 定義kernel kernel = np.ones((3, 3), np.uint8) tophat_img = cv2.morphologyEx(img1, cv2.MORPH_TOPHAT, kernel) blackhat_img = cv2.morphologyEx(img1, cv2.MORPH_BLACKHAT, kernel) cv2.imshow("tophat_img", tophat_img) # 顯示疊加影象 dst cv2.imshow("blackhat_img", blackhat_img) # 顯示疊加影象 dst cv2.waitKey(0) cv2.destroyAllWindows()
以上就是OpenCV學習之影象形態學處理詳解的詳細內容,更多關於OpenCV影象形態學處理的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45