国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Node實現驗證碼識別

luckyw / 2110人閱讀

摘要:了別人代碼的你最近忽然對圖像識別有了興趣,作為一個前端,當然是想用來深入研究。先從簡單的入手,識別圖片驗證碼。圖片驗證碼對開發來說一點也不陌生,它是對服務器保護的一道屏障,避免了諸如暴力破解密碼之類的攻擊。

copy了別人代碼的你

最近忽然對圖像識別有了興趣,作為一個前端,當然是想用Javascript來深入研究。

先從簡單的入手,識別圖片驗證碼。圖片驗證碼對web開發來說一點也不陌生,它是對服務器保護的一道屏障,避免了諸如暴力破解密碼之類的攻擊。但是,今天就是要去突破這道屏障。

現在開源的圖像識別技術有很多,我在GitHub上找到了一個用Javascript實現的,相對受歡迎的框架Tesseract.js。

我先準備好一個簡單的驗證碼

這個是數字字母的組合,接下來我們就用tesseract.js來對這個驗證碼進行解析。

安裝
npm install --save tesseract.js

使用這個命令進行安裝,--save代表只安裝到當前項目中。

使用

首先要在代碼中進行引入

var tesseract = require("tesseract.js");

然后使用tesseract的recognize方法對圖片進行解析。

tesseract.recognize(myImage,options)
.then(function(result){
    console.log(result)
});

其中,myImage可以是圖片file對象,或者圖片的存放地址的字符串等,我們這里先用存放地址的字符串。

options則是對解析過程的個性化設置,可以設置語言等其他屬性,較為重要的有lang屬性,用來設置語言類型,英文為eng(默認),數字是Math.

運行效果

下面我們來看一下實際的運行效果。

文件系統

app.js

使用node命令運行

可以看出,輸出的結果是LPGU,驗證碼中的字母數字組合是LP6U,略有偏差,將6解析成了G。

所以,自動識別雖好,但是準確率還是需要提高。

Tesseract.js訓練

tesseract.js是可以通過訓練來提高準確率的,我們看一下第一次運行結束后發生了什么變化。

運行結束之后,文件系統中生成了一個eng.traineddata文件

這個文件,就是tesseract的訓練文件,下次再分析的時候,會先從這個訓練文件中尋找是否有匹配的結果。通過這種方式,形成它自己的大腦。

當然,我認為也可以手動的添加相同格式的文件進去,手動的擴充這個圖像分析系統的智能性。

附錄一

recognize第一個參數所允許的類型:

因為tesseract.js既可以運行node服務器中,也可以運行再瀏覽器中,我們這里只提在服務器中所允許的類型

文件地址(string)

包含PNGJPEG類型的Buffer對象

imageData對象

附錄二

瀏覽器中引入方式

使用方式同node方法

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/83156.html

相關文章

  • node識別驗證

    摘要:驗證碼的識別成功率跟圖片質量關系密切,一般拿到后的驗證碼都得經過灰度化,二值化,去噪,利用就可以很方便的做到。 了解驗證碼 什么是驗證碼? 所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅圖片,圖片里加上一些干擾象素(防止OCR),由用戶肉眼識別其中的驗證碼信息,輸入表單提交網站驗證,驗證成功后才能使用某項功能,通俗說就是一種區分用戶是計算機和人的公共全自動程序 驗證碼的作用 可以...

    levy9527 評論0 收藏0
  • OCR識別驗證

    摘要:識別網站驗證碼詳見維基百科或者百度百科識別的驗證碼原理采集一批驗證碼,根據圖片特點進行初步處理二值化灰度化濾波降噪等處理然后分割圖片,旋轉圖片,模板選取,訓練算法,讓它更準確。 最近在爬某網站,老是蹦出來驗證碼,就想著找個OCR破了這個驗證碼,然后就開始了OCR探索之旅。 首先簡單說一下什么是OCR OCR是(Optical Character Recognition,光學字符識別)的...

    Yangyang 評論0 收藏0
  • 一只node爬蟲的升級打怪之路

    摘要:我是一個知乎輕微重度用戶,之前寫了一只爬蟲幫我爬取并分析它的數據,我感覺這個過程還是挺有意思,因為這是一個不斷給自己創造問題又去解決問題的過程。所以這只爬蟲還有登陸知乎搜索題目的功能。 我一直覺得,爬蟲是許多web開發人員難以回避的點。我們也應該或多或少的去接觸這方面,因為可以從爬蟲中學習到web開發中應當掌握的一些基本知識。而且,它還很有趣。 我是一個知乎輕微重度用戶,之前寫了一只爬...

    shiweifu 評論0 收藏0
  • 如何識別圖片驗證?

    摘要:圖片驗證碼是目前最常用的一種。神經網絡以上驗證碼識別都依賴于字符切分,切分的好壞幾乎直接決定識別的準確程度。目前驗證碼識別最先進的是谷歌在識別街景圖像中門牌號碼中使用的一套的算法。 全自動區分計算機和人類的圖靈測試(Completely Automated Public Turing test to tell Computers and Humans Apart,簡稱CAPTCHA),...

    y1chuan 評論0 收藏0
  • 驗證識別

    摘要:下面我們便來講種驗證碼的識別方式和一些思路。哈哈庫其實,驗證碼識別歸根到底還是對各種各樣圖片的識別和操作,中有很對圖像處理的庫,其中就是其中之一。所以在處理驗證碼識別之前,必須先了解庫和。第五步,按照規定軌跡進行拖動,完成驗證。 寫在前面 現在,很多網站采取各種各樣的措施來反爬蟲,其中之一就是使用驗證碼。當我們訪問網頁時,必須先通過驗證碼才能夠訪問頁面。下面我們便來講2種驗證碼的識別方...

    keke 評論0 收藏0

發表評論

0條評論

luckyw

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<