使用Python的OpenCV模塊識別滑動驗證碼的缺口(推薦)
最近終于找到一個好的方法,使用Python的OpenCV模塊識別滑動驗證碼的缺口,可以將滑動驗證碼中的缺口識別出來了。

測試使用如下兩張圖片:

target.jpg

template.png
現(xiàn)在想要通過“template.png”在“target.jpg”中找到對應(yīng)的缺口,代碼實現(xiàn)如下:
# encoding=utf8
import cv2
import numpy as np
def show(name):
cv2.imshow('Show', name)
cv2.waitKey(0)
cv2.destroyAllWindows()
def main():
otemp = 'template.png'
oblk = 'target.jpg'
target = cv2.imread(otemp, 0)
template = cv2.imread(oblk, 0)
w, h = target.shape[::-1]
temp = 'temp.jpg'
targ = 'targ.jpg'
cv2.imwrite(temp, template)
cv2.imwrite(targ, target)
target = cv2.imread(targ)
target = cv2.cvtColor(target, cv2.COLOR_BGR2GRAY)
target = abs(255 - target)
cv2.imwrite(targ, target)
target = cv2.imread(targ)
template = cv2.imread(temp)
result = cv2.matchTemplate(target, template, cv2.TM_CCOEFF_NORMED)
x, y = np.unravel_index(result.argmax(), result.shape)
# 展示圈出來的區(qū)域
cv2.rectangle(template, (y, x), (y + w, x + h), (7, 249, 151), 2)
show(template)
if __name__ == '__main__':
main()運行結(jié)果見本文最上面,通過運行結(jié)果可以知道,已經(jīng)正確的找到了缺口位置。
總結(jié)
以上所述是小編給大家介紹的使用Python的OpenCV模塊識別滑動驗證碼的缺口,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
Pandas出現(xiàn)KeyError的問題解決及分析
本文主要介紹了Pandas出現(xiàn)KeyError的問題解決及分析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
Python解析json時提示“string indices must be integers”問題解決方法
這篇文章主要介紹了Python解析json時提示“string indices must be integers”問題解決方法,結(jié)合實例形式分析了Python解析json字符串操作規(guī)范與相關(guān)使用技巧,需要的朋友可以參考下2019-07-07
python實現(xiàn)linux服務(wù)器批量修改密碼并生成execl
這篇文章主要介紹了python實現(xiàn)linux服務(wù)器批量修改密碼并生成execl示例,需要的朋友可以參考下2014-04-04
Python面向?qū)ο蟪绦蛟O(shè)計之繼承與多繼承用法分析
這篇文章主要介紹了Python面向?qū)ο蟪绦蛟O(shè)計之繼承與多繼承用法,結(jié)合實例形式分析了Python繼承與多繼承的簡單定義與使用方法,需要的朋友可以參考下2018-07-07
Python?sklearn轉(zhuǎn)換器估計器和K-近鄰算法
這篇文章主要介紹了Python?sklearn轉(zhuǎn)換器估計器和K-近鄰算法,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08

