最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用openCV和Python 實現(xiàn)圖片對比,并標識出不同點的方式

 更新時間:2019年12月19日 10:00:56   作者:ibaymin  
今天小編就為大家分享一篇用openCV和Python 實現(xiàn)圖片對比,并標識出不同點的方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

最近項目中需要實現(xiàn)兩組圖片對比,并能將兩者的區(qū)別標識出來。

在網(wǎng)上搜索一大堆找到一篇大神的文章,最終實現(xiàn)該功能,在這里記錄下:

想要實現(xiàn)此demo,首先我們得確保電腦上已安裝 openCV 和 Python 兩個工具以及scikit-image和imutils兩個庫:

安裝方法,在這里不多說,我安裝的是Python3.6 和openCV2,安裝方法網(wǎng)上自行百度谷歌;

進入正題:

新建一個新的Python文件并命名為copmarePicture.py,寫入下面的代碼:

from skimage.measure import compare_ssim
#~ import skimage as ssim
import argparse
import imutils
import cv2

加載兩張圖片并將他們轉(zhuǎn)換為灰度:

imageA = cv2.imread("D:/111test/111.png")
imageB = cv2.imread("D:/111test/444.png")

grayA = cv2.cvtColor(imageA,cv2.COLOR_BGR2GRAY)
grayB = cv2.cvtColor(imageB,cv2.COLOR_BGR2GRAY)

接下來,計算兩個灰度圖像之間的結構相似度指數(shù):

(score,diff) = compare_ssim(grayA,grayB,full = True)
diff = (diff *255).astype("uint8")
print("SSIM:{}".format(score))

找到不同點的輪廓以致于我們可以在被標識為“不同”的區(qū)域周圍放置矩形:

thresh = cv2.threshold(diff,0,255,cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)[1]
cnts = cv2.findContours(thresh.copy(),cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if imutils.is_cv2() else cnts[1]

找到一系列區(qū)域,在區(qū)域周圍放置矩形:

for c in cnts:                                                          
 (x,y,w,h) = cv2.boundingRect(c)                                                
 cv2.rectangle(imageA,(x,y),(x+w,y+h),(0,0,255),2)                                           
 cv2.rectangle(imageB,(x,y),(x+w,y+h),(0,0,255),2)

用cv2.imshow 展現(xiàn)最終對比之后的圖片, cv2.imwrite 保存最終的結果圖片

cv2.imshow("Modified",imageB)
cv2.imwrite("haha2.png",imageB)
cv2.waitKey(0)

到這已經(jīng)實現(xiàn)兩張圖片的對比并標識出不同。結果如下所示:(圖1圖2對比,圖3為對標結果

以上這篇用openCV和Python 實現(xiàn)圖片對比,并標識出不同點的方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • python 計算積分圖和haar特征的實例代碼

    python 計算積分圖和haar特征的實例代碼

    今天小編就為大家分享一篇python 計算積分圖和haar特征的實例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python+OpenCV圖像處理——打印圖片屬性、設置存儲路徑、調(diào)用攝像頭

    Python+OpenCV圖像處理——打印圖片屬性、設置存儲路徑、調(diào)用攝像頭

    這篇文章主要介紹了Python+OpenCV圖像處理——打印圖片屬性、設置存儲路徑、調(diào)用攝像頭的示例,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2020-10-10
  • 一文掌握python中的時間包

    一文掌握python中的時間包

    這篇文章主要介紹了python中的時間包,主要包括datetime時間包,獲取當前時間,獲取時間間隔及時間對象轉(zhuǎn)時間字符串的相關知識,本文通過示例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • 關于pandas的離散化,面元劃分詳解

    關于pandas的離散化,面元劃分詳解

    今天小編就為大家分享一篇關于pandas的離散化,面元劃分詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python使用PyQt5/PySide2編寫一個極簡的音樂播放器功能

    Python使用PyQt5/PySide2編寫一個極簡的音樂播放器功能

    這篇文章主要介紹了Python中使用PyQt5/PySide2編寫一個極簡的音樂播放器功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • django實現(xiàn)更改數(shù)據(jù)庫某個字段以及字段段內(nèi)數(shù)據(jù)

    django實現(xiàn)更改數(shù)據(jù)庫某個字段以及字段段內(nèi)數(shù)據(jù)

    這篇文章主要介紹了django實現(xiàn)更改數(shù)據(jù)庫某個字段以及字段段內(nèi)數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Python密碼學XOR算法編碼流程及乘法密碼教程

    Python密碼學XOR算法編碼流程及乘法密碼教程

    這篇文章主要為大家介紹了Python密碼學XOR流程及乘法密碼教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Python中的super用法詳解

    Python中的super用法詳解

    這篇文章主要介紹了Python中的super用法詳解,本文講解了關于super問題的發(fā)現(xiàn)與提出、走進Python的源碼世界分析super的實現(xiàn)、延續(xù)的討論super等內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • Python項目打包成exe文件

    Python項目打包成exe文件

    大家好,本篇文章主要講的是Python項目打包成exe文件,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 關于PyQt5中QtGui.QImage圖片顯示問題解析

    關于PyQt5中QtGui.QImage圖片顯示問題解析

    PyQt作為Qt語言的Python擴展,可以用來方便快速的開發(fā)界面應用,本文重點給大家介紹PyQt5中的QtGui.QImage圖片顯示問題分析,需要的朋友可以參考下
    2022-03-03

最新評論

济源市| 出国| 庆云县| 鹤壁市| 固安县| 和平县| 扶沟县| 曲沃县| 监利县| 安化县| 竹北市| 铅山县| 红河县| 和田县| 太白县| 太仆寺旗| 襄樊市| 舞阳县| 黄冈市| 什邡市| 青浦区| 张北县| 偏关县| 科技| 宽城| 万荣县| 白水县| 克东县| 朝阳县| 邯郸市| 若羌县| 临湘市| 宿迁市| 南木林县| 忻城县| 罗源县| 潼关县| 五台县| 孝感市| 礼泉县| 平定县|