java解出圖片中的文字

      網友投稿 1294 2025-03-31

      測試代碼:

      public?static?String?crackImage(String?filePath)?{ ????????File?imageFile?=?new?File(filePath); ????????ITesseract?instance?=?new?Tesseract();? ????????instance.setDatapath("D:\Users\DetectText\tessdata"); ????????try?{ ????????????String?result?=?instance.doOCR(imageFile); ????????????return?result; ????????}?catch?(TesseractException?e)?{ ????????????System.err.println(e.getMessage()); ????????????return?"Error?while?reading?image"; ????????} } public?static?void?main(String[]?args)?{ //?TODO?Auto-generated?method?stub ????System.out.println(ImageCracker.crackImage("D:\Users\DetectText\tessdata\captcha1.png")); }

      用博客的驗證碼試了試,幾乎可以算完全識別不出來

      看來不使用針對性訓練數據不行

      排除樣本中的干擾文字和干擾折線,只保留紅色文字

      BufferedImage?initImage; try?{ initImage?=?ImageIO.read(new?File(filePath)); ????int?width?=?initImage.getWidth(null), ????????????height?=?initImage.getHeight(null); ????BufferedImage?image?=?new?BufferedImage(width,?height,?BufferedImage.TYPE_INT_RGB); ????Graphics?g?=?image.getGraphics(); ????g.drawImage(initImage,?0,?0,?null); ????for?(int?y?=?0;?y?

      使用jTessBoxEditor編輯并生成訓練集

      參考:https://zhuanlan.zhihu.com/p/57826761+&cd=2&hl=zh-CN&ct=clnk&gl=sg

      使用產生的新的訓練集進行測試驗證

      File?imageFile?=?new?File(filePath); ITesseract?instance?=?new?Tesseract();? instance.setDatapath("D:\Users\DetectText\tessdata"); instance.setTessVariable("tessedit_char_whitelist",?"g");//0123456789abcdefghijklmnopqrstuvwxyz //instance.setTessVariable("editor_image_text_color",?"RED"); //instance.setPageSegMode(7); String?result?=?instance.doOCR(imageFile);

      --我就測了一個字母,而且是訓練集和測試集完全一樣的情況;

      感覺如果識別出圖片中的字體格式再進一步操作會有比較高的準確率,也不用準備很多的訓練集

      參考:

      https://dzone.com/articles/reading-text-from-images-using-java-1

      https://github.com/csanuragjain/extra/tree/master/ReadFromImages

      https://stackoverflow.com/questions/18095708/tess4j-doesnt-use-its-tessdata-folder

      https://github.com/tesseract-ocr/tessdata

      //========================

      圖片驗證碼訓練

      Tesseract-OCR-04-使用 jTessBoxEditor 進行訓練

      tesseract

      純記錄,Tesseract-OCR 中文字符訓練

      COMBINE_TESSDATA(1)

      深入學習Tesseract-ocr識別中文并訓練字庫的方法

      Tesseract-OCR的簡單使用與訓練

      3_tesseract

      javacpp-presets

      tesseract-ocr命令學習

      Command-Line-Usage

      limit-characters-tesseract-is-looking-for

      OCR技術現在到了什么水平?如果圖像模糊到人眼識別不出來的話,它還可以識別出來么

      write-with-opencv-ocr-tessdata

      detect-font-in-a-image

      【OCR技術系列之一】字符識別技術總覽

      Tesseract 訓練識別字符的思路

      tess4j-set-only-to-identify-numbers-and-letters

      recognize-coloured-text-with-tesseract-tess4j

      using-gpuimages-adaptive-threshold-filter

      tesseract-not-picking-up-different-colored-text

      Java- How to remove background color from an image

      ReadFromImages

      Inconsistent error message when eng.traineddata not found

      tesseract-for-java-setting-tessdata-prefix-for-executable-jar

      Tesseract-OCR 訓練過程 V3.02

      Tesseract OCR training gives 'APPLY_BOXES' errors

      Trained Tesseract on 瘦金體 successfully!!

      使用Tesseract-OCR進行圖像中的文字識別

      //========================

      jtessboxeditor需要netbeans編譯,下面是一個netbeans9 windows鏡像

      netbeans鏡像

      ant:jtessboxeditor junit error

      Java Ant build.xml詳解

      jTessBoxEditor matser

      使用Tesseract-OCR進行圖像中的文字識別

      //========================

      fatal-error-in-launcher-unable-to-create-process-using-c-program-files-x86

      importerror-no-module-named-pil

      multi-python-version-on-windows

      移動python目錄到非c盤之后,pip3安裝命令報錯,可以使用python -m pip安裝,解決pip3 Unable to create process using報錯的方法還沒看到 python -m pip install Pillow

      //========================

      https://stackoverflow.com/questions/171588/is-there-a-command-to-refresh-environment-variables-from-the-command-prompt-in-w

      系統環境變量可以使用set Path=C:后再重啟一個控制臺,用戶環境變量可以重啟explorer.exe, 臨時添加可以直接SET PATH=%PATH%;C:\xxxx

      adding-directory-to-path-environment-variable-in-windows

      java解出圖片中的文字

      /*---------------------------分割線--------------------------------------------*/

      使用上面的方法還是沒有達到很準的匹配效果,也許采用局部的pattern特征匹配可以,

      對于g來說上面這部分如果沒有被遮擋就可以作為一個識別特征

      //==========

      使用模板匹配時,不調用這個Core.normalize(result, result, 0, 1, Core.NORM_MINMAX, -1, new Mat()),而直接使用Imgproc.TM_CCOEFF_NORMED這類方法可以獲取到比較明顯的得分差異;

      /*---------------------------分割線--------------------------------------------*/

      看了一下CAPTCHA-caffe感覺是很好的方案,準備測一測;

      //========================

      building-a-java-edge-detection-application

      JCanny

      我用JAVA做了個簡易圖像相似度計算器

      基于 OpenCV 的圖像匹配( Java 版)

      灰度圖像二值化,輪廓檢測,統計屬性

      OpenCV—RGB圖像灰度化,并提取輪廓

      OpenCV成長之路(8):直線、輪廓的提取與描述

      org.opencv.imgproc.Imgproc Canny

      //========================

      detecting-image-in-another-image-image-comparison

      Java - Image Recognition

      Java OpenCV from Maven

      TemplateMatching

      Finding pattern of points in an another image (OpenCV)

      Template Matching

      nu.pattern.OpenCV$UnsupportedPlatformException: Operating system “WINDOWS” and architecture “X86_64” are not supported

      OpenCV prebuilt

      unsatisfiedlinkerror-no-opencv-java249-in-java-library-path

      opencv_java249.dll

      google.common.io

      Opencv for android 模板匹配

      Java openCV – 使用Imgproc.matchTemplate方法后,如何檢查結果?

      //========================

      multi-scale-template-matching-using-python-openc

      scale-and-rotation-invariant-template-matching

      LogPolarFFTTemplateMatcher

      how-does-macthtemplate-deal-with-scaling

      OpencvTemplateScaleMatch.py

      OpenCV matchTemplate閾值用于不同的方法

      OpenCV探索之路(九):模板匹配 if (minVal < 0.001)

      //========================

      如何知道線的寬度

      OpenCV-Python 霍夫直線檢測-HoughLinesP函數參數

      直線/曲線檢測:Randon變換與Hough變換

      OpenCV 提取圖片中的曲線

      OpenCV:曲線的檢測與提取-0

      //========================

      OpenCV 填充(ROI)+模糊操作

      opencv - python 間隙填充輪廓/線條

      如何用opencv填充輪廓線

      c – 用opencv python填充輪廓

      OpenCV的輪廓查找和填充

      Opencv怎么填充邊緣內的區域

      //========================

      OpenCV曲線擬合與圓擬合-流浪的魚-51CTO博客

      【OpenCV入門教程之十一】 形態學圖像處理(二):開運算、閉運算、形態學梯度、頂帽、黑帽合輯 - 【淺墨的游戲編程Blog】毛星云(淺墨)的專欄 - CSDN博客

      OpenCV 輪廓匹配 - vine_branches的專欄 - CSDN博客

      Opencv2.4學習::二值化(2)threshold - dieju8330的博客 - CSDN博客

      OpenCV成長之路(8):直線、輪廓的提取與描述 - ☆Ronny丶 - 博客園

      Opencv-Python學習筆記六——邊界增加copyMakeBorder,位運算bitwise_*,色彩空間cvtColor - 簡書

      //==================

      PHP驗證碼[,PHP檢驗碼][,PHP校驗碼][,PHP生成驗證碼][,PHP獲取驗證碼] - barack-毛巴馬的個人空間 - OSCHINA

      10-1驗證碼生成+10-2生成tfrecord - Josie_chen - 博客園

      ASP.NET圖形驗證碼的生成 - JustXIII - 博客園

      【轉】Java生成圖片驗證碼 - shindoyang - 博客園

      【驗證碼生成及破解】第一部分:驗證碼生成及驗證碼圖片生成TFRecord - 寸先生的AI道路 - CSDN博客

      python3生成驗證碼代碼 - 知乎

      //=================

      https://blog.csdn.net/sinat_14916279/article/details/56489601

      https://github.com/LouieYang/CAPTCHA-caffe

      /*--------------------------分割線-------------------------------------*/

      測試記錄:

      在caffe基礎環境下添加兩個包:

      python -m pip install captcha

      python -m pip install h5py

      這個測試項目的是python2環境,我的caffe環境是python3所以要改造一下;

      python generator/generator.py --ntrain 200 --nval 100

      generator.py:

      print格式改成p3寫法

      json_content.iteritems()=>json_content.items()

      添加兩個導入

      from?PIL?import?Image import?h5py

      im.resize的參數改為tuple

      solver.prototxt中的net改為相對于命令運行目錄,即添加model/

      caffe train --solver=model/solver.prototxt

      參考:

      https://github.com/apache/incubator-mxnet/issues/3205

      https://stackoverflow.com/questions/30418481/error-dict-object-has-no-attribute-iteritems/30418498

      https://stackoverflow.com/questions/20443846/python-pil-nameerror-global-name-image-is-not-defined

      https://stackoverflow.com/questions/49565298/pil-valueerror-unknown-resampling-filter-how-to-resize-images-uploaded-on-fla

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何在圖表上顯示數值(圖表如何設置顯示數值)
      下一篇:為您的業務選擇合適的云會計軟件
      相關文章
      亚洲国产精品无码专区影院| 亚洲中文字幕久久精品无码APP | 亚洲精品午夜无码电影网| 亚洲另类无码一区二区三区| 亚洲 日韩经典 中文字幕| 亚洲国产精品综合久久网各| 亚洲男人电影天堂| 久久国产亚洲精品无码| 亚洲视频在线免费看| 亚洲第一网站免费视频| 亚洲国产精品成人久久久| 亚洲成综合人影院在院播放| 亚洲免费观看网站| 77777午夜亚洲| 亚洲欧美熟妇综合久久久久| 亚洲国产无线乱码在线观看| 亚洲爆乳无码专区www| 亚洲成a人无码亚洲成av无码 | 亚洲色偷偷综合亚洲AV伊人蜜桃 | 亚洲精品无码永久中文字幕| 亚洲色大成网站WWW久久九九| 亚洲色大成网站WWW久久九九 | 亚洲AV女人18毛片水真多| 亚洲Av无码乱码在线znlu| 亚洲乱码中文字幕手机在线| 国产亚洲日韩在线三区| 国产AV无码专区亚洲AVJULIA| 久久青草亚洲AV无码麻豆| 中文字幕亚洲色图| 亚洲伊人久久精品| 亚洲成aⅴ人片久青草影院按摩| 亚洲av无码天堂一区二区三区 | 亚洲精品国产免费| 亚洲第一区二区快射影院| 亚洲大码熟女在线观看| 亚洲精品黄色视频在线观看免费资源 | 亚洲精品高清视频| 亚洲在成人网在线看| 亚洲综合色一区二区三区| 日韩亚洲人成网站| 亚洲中文久久精品无码|