亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用python 對驗證碼圖片進行降噪處理

 更新時間:2019年12月18日 09:43:51   作者:大蛇王  
今天小編就為大家分享一篇使用python 對驗證碼圖片進行降噪處理,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

首先貼一張驗證碼上來做案例:

第一步先通過二值化處理把干擾線去掉:

from PIL import Image
 
# 二值化處理
def two_value():
  for i in range(1,5):
    # 打開文件夾中的圖片
    image=Image.open('./Img/'+str(i)+'.jpg')
    # 灰度圖
    lim=image.convert('L')
    # 灰度閾值設(shè)為165,低于這個值的點全部填白色
    threshold=165
    table=[]
    
    for j in range(256):
      if j<threshold:
        table.append(0)
      else:
        table.append(1)
 
    bim=lim.point(table,'1')
    bim.save('./Img2/'+str(i)+'.jpg')
 
two_value()

運行結(jié)果圖如下:

然后對黑白圖片進行降噪,去掉那些單獨的黑色像素點:

from PIL import Image
 
# 去除干擾線
im = Image.open('./Img2/1.jpg')
# 圖像二值化
data = im.getdata()
w,h = im.size
black_point = 0
 
for x in range(1,w-1):
  for y in range(1,h-1):
    mid_pixel = data[w*y+x] # 中央像素點像素值
    if mid_pixel <50: # 找出上下左右四個方向像素點像素值
      top_pixel = data[w*(y-1)+x]
      left_pixel = data[w*y+(x-1)]
      down_pixel = data[w*(y+1)+x]
      right_pixel = data[w*y+(x+1)]
 
      # 判斷上下左右的黑色像素點總個數(shù)
      if top_pixel <10:
        black_point += 1
      if left_pixel <10:
        black_point += 1
      if down_pixel <10:
        black_point += 1
      if right_pixel <10:
        black_point += 1
      if black_point <1:
        im.putpixel((x,y),255)
      # print(black_point)
      black_point = 0
 
im.save('xxxx.jpg')

運行結(jié)果如下圖所示:

最后對邊框上附著的黑色像素點進行消除:

from PIL import Image
 
# 去除干擾線
im = Image.open('./Img2/1.jpg')
# 圖像二值化
data = im.getdata()
w,h = im.size
black_point = 0
 
for x in range(1,w-1):
  for y in range(1,h-1):
    if x<2 or y<2 :
      im.putpixel((x-1, y-1), 255)
    if x>w-3 or y>h-3:
      im.putpixel((x+1 , y+1 ), 255)
 
im.save('xxx.jpg')

運行結(jié)果:

以上這篇使用python 對驗證碼圖片進行降噪處理就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python工廠模式實現(xiàn)封裝Webhook群聊機器人詳解

    Python工廠模式實現(xiàn)封裝Webhook群聊機器人詳解

    企業(yè)存在給 特定群組 自動推送消息的需求,你可以在群聊中添加一個自定義機器人,通過服務(wù)端調(diào)用 webhook 地址,即可將外部系統(tǒng)的通知消息即時推送到群聊中。本文就來和大家聊聊具體實現(xiàn)方法
    2023-02-02
  • python利用re,bs4,requests模塊獲取股票數(shù)據(jù)

    python利用re,bs4,requests模塊獲取股票數(shù)據(jù)

    這篇文章主要介紹了python利用re,bs4,requests模塊獲取股票數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • 裝上這 14 個插件后,PyCharm 真的是無敵的存在

    裝上這 14 個插件后,PyCharm 真的是無敵的存在

    這篇文章主要介紹了裝上這 14 個插件后,PyCharm 真的是無敵的存在,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • selenium WebDriverWait類等待機制的實現(xiàn)

    selenium WebDriverWait類等待機制的實現(xiàn)

    這篇文章主要介紹了selenium WebDriverWait類等待機制的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • 基于Python實現(xiàn)批量保存視頻到本地

    基于Python實現(xiàn)批量保存視頻到本地

    我們刷視頻時常常會想把精彩的視頻保存到本地,如果少數(shù)的還行,如果有很多的話一個個保存太麻煩了。本文教你如何用Python實現(xiàn)視頻批量保存到本地,需要的可以參考一下
    2022-05-05
  • python函數(shù)參數(shù),名稱空間,以及函數(shù)嵌套

    python函數(shù)參數(shù),名稱空間,以及函數(shù)嵌套

    這篇文章主要給大家介紹python函數(shù)參數(shù)、名稱空間、以及函數(shù)嵌套的相關(guān)資料,想具體了解的小伙伴請和小編一起進入下面文章內(nèi)容吧
    2021-10-10
  • Selenium+Python自動化測試入門

    Selenium+Python自動化測試入門

    本文主要介紹了Selenium+Python自動化測試入門,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Python實現(xiàn)向好友發(fā)送微信消息優(yōu)化篇

    Python實現(xiàn)向好友發(fā)送微信消息優(yōu)化篇

    利用python可以實現(xiàn)微信消息發(fā)送功能,怎么實現(xiàn)呢?你肯定會想著很復(fù)雜,但是python的好處就是很多人已經(jīng)把接口打包做好了,只需要調(diào)用即可,今天通過本文給大家分享使用?Python?實現(xiàn)微信消息發(fā)送的思路代碼,一起看看吧
    2022-06-06
  • 簡單了解django緩存方式及配置

    簡單了解django緩存方式及配置

    這篇文章主要介紹了簡單了解django緩存概述及配置,由于Django是動態(tài)網(wǎng)站,所有每次請求均會去數(shù)據(jù)進行相應(yīng)的操作,當程序訪問量大時,耗時必然會更加明顯,最簡單解決方式是使用:緩存,需要的朋友可以參考下
    2019-07-07
  • python列表與元組詳解實例

    python列表與元組詳解實例

    python列表與元組詳解實例,本文是基于python2.x的講解,這點一定要注意。
    2013-11-11

最新評論