Rで解析:RでOCRをしてみませんか?画像から文字を取得できます!「tesseract」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

画像ファイルから指定した言語でOCRが可能なパッケージの紹介です。画像の解像度により精度が変化しますが文字データの取得には十分実用的です。大変面白いパッケージです。

パッケージバージョンは5.1.0。実行コマンドはR version 4.2.2で確認しています。

スポンサーリンク

パッケージのインストール

下記コマンドを実行してください。

#パッケージのインストール
install.packages("tesseract")

実行コマンド

詳細はコマンド、各パッケージのヘルプを確認してください。

念のためtraining dataのダウンロード先を紹介します。

・training dataのダウンロード
 https://tesseract-ocr.github.io/tessdoc/Data-Files

OCR処理の画像は以下の通りです。

#パッケージの読み込み
library("tesseract")

#tesseractの環境を確認:tesseract_infoコマンド
#初期状態のavailableは"eng" "osd"のみです
TessRact <- tesseract_info()

#&#30906;&#35469;
TessRact

$datapath
[1] "C:\\Users\\&#12518;&#12540;&#12470;&#12540;&#21517;\\AppData\\Local\\tesseract5\\tesseract5\\tessdata/"

$available
[1] "eng" "osd"

$version
[1] "5.1.0"

$configs
[1] "alto"             "ambigs.train"     "api_config"       "bigram"          
[5] "box.train"        "box.train.stderr" "digits"           "get.images"      
[9] "hocr"             "inter"            "kannada"          "linebox"         
[13] "logfile"          "lstm.train"       "lstmbox"          "lstmdebug"       
[17] "makebox"          "pdf"              "quiet"            "rebox"           
[21] "strokewidth"      "tsv"              "txt"              "unlv"            
[25] "wordstrbox" 

#tessdata repository&#12363;&#12425;training data&#12434;&#21462;&#24471;:tesseract_download&#12467;&#12510;&#12531;&#12489;
#lang&#12458;&#12503;&#12471;&#12519;&#12531;&#12395;&#30446;&#30340;&#12392;&#12377;&#12427;&#35328;&#35486;&#12434;&#25351;&#23450;&#12377;&#12427;&#12392;&#33258;&#21205;&#12391;&#20445;&#23384;&#12373;&#12428;&#12414;&#12377;
#&#12394;&#12362;&#12289;&#19968;&#24230;&#12480;&#12454;&#12531;&#12525;&#12540;&#12489;&#12377;&#12427;&#12392;&#27425;&#22238;&#12399;&#23455;&#34892;&#12375;&#12394;&#12367;&#12392;&#12418;&#12424;&#12356;&#12391;&#12377;
#&#20197;&#19979;&#12399;&#33258;&#36523;&#12391;&#12480;&#12454;&#12531;&#12525;&#12540;&#12489;&#12377;&#12427;&#22580;&#21512;&#12398;&#21442;&#32771;&#12391;&#12377;
##&#26085;&#26412;&#35486;:https://github.com/tesseract-ocr/tessdata/raw/4.00/jpn.traineddata
##&#12480;&#12454;&#12531;&#12525;&#12540;&#12489;:utils::download.file&#12467;&#12510;&#12531;&#12489;;&#21021;&#26399;&#12395;&#12452;&#12531;&#12473;&#12488;&#12540;&#12523;&#12373;&#12428;&#12390;&#12356;&#12414;&#12377;
##download.file(url = "https://github.com/tesseract-##ocr/tessdata/raw/4.00/jpn.traineddata",
##              destfile = paste0(TessRact$datapath, "/jpn.traineddata"))

#&#12488;&#12524;&#12540;&#12491;&#12531;&#12464;&#12487;&#12540;&#12479;&#12398;&#21462;&#24471;&#12392;&#35501;&#12415;&#36796;&#12415;
tesseract_download(lang = "jpn")

#&#30011;&#20687;&#12501;&#12449;&#12452;&#12523;&#12363;&#12425;&#12486;&#12461;&#12473;&#12488;&#12434;&#25277;&#20986;:ocr&#12467;&#12510;&#12531;&#12489;
#&#20966;&#29702;&#35328;&#35486;&#12434;&#25351;&#23450;:engine&#12458;&#12503;&#12471;&#12519;&#12531;
#&#30011;&#20687;&#12501;&#12449;&#12452;&#12523;&#12434;&#25351;&#23450;
OCRImg <- paste0(as.character(tcltk::tkgetOpenFile(title = "&#30011;&#20687;&#12501;&#12449;&#12452;&#12523;&#12434;&#36984;&#25246;",
                                                   filetypes = '{"&#30011;&#20687;&#12501;&#12449;&#12452;&#12523;" {".*"}}',
                                                   initialfile = "*.*")))
#OCR&#20966;&#29702;
GetOCR <- ocr(image = OCRImg,
              engine = tesseract("jpn"))

#&#20869;&#23481;&#30906;&#35469;
cat(GetOCR)

#&#20197;&#19979;&#32080;&#26524;;&#19968;&#37096;&#35501;&#12415;&#36796;&#12415;&#12511;&#12473;&#12364;&#12354;&#12426;&#12414;&#12377;&#12364;&#23455;&#29992;&#30340;&#12391;&#12377;
NCBI&#12487;&#12540;&#12479;&#12505;&#12540;&#12473;&#12434;R&#12363;&#12385;&#12425;&#25805;&#20316;&#12377;&#12427;&#12497;&#12483;&#12465;&#12540;&#12472;&#12399;&#12356;&#12367;&#12388;&#12363;&#23384;&#22312;&#12375;&#12414;&#12377;&#12364;&#12289;&#26412;&#12497;&#12483;&#12465;&#12540;&#12472;&#12399;PubMed
&#12487;&#12540;&#12479;&#12505;&#12540;&#12473;&#12363;&#12425;&#24773;&#22577;&#12434;&#21454;&#38598;&#12377;&#12427;&#12398;&#12395;&#29305;&#21270;&#12375;&#12383;&#12497;&#12483;&#12465;&#12540;&#12472;&#12391;&#12377;&#12290;&#12363;&#12394;&#12426;&#31777;&#21336;&#12395;&#24773;&#22577;&#12434;&#21454;&#38598;&#12377;&#12427;&#12371;&#12392;
&#12364;&#20986;&#26469;&#12414;&#12377;&#12290;

&#23455;&#34892;&#12467;&#12510;&#12531;&#12489;&#12391;&#12399;&#26908;&#32034;&#12463;&#12456;&#12522;&#12395;"r statistical software"&#12434;&#25351;&#23450;&#12375;&#12289;&#21462;&#24471;&#12375;&#12383;&#12487;&#12540;&#12479;&#12434;Google&#12473;&#12503;&#12524;
&#12483;&#12489;&#12471;&#12540;&#12488;&#12408;&#12450;&#12483;&#12503;&#12525;&#12540;&#12489;&#12392;&#12300;xlsx]&#12301; &#12501;&#12449;&#12452;&#12523;&#12391;&#20445;&#23384;&#12377;&#12427;&#20363;&#12434;&#32057;&#20171;&#12375;&#12414;&#12377;&#12290;

&#12497;&#12483;&#12465;&#12540;&#12472;&#12496;&#12540;&#12472;&#12519;&#12531;&#12399;2.13&#12290;&#23455;&#34892;&#12467;&#12510;&#12531;&#12489;&#12399;R version 4.2.2&#12391;&#30906;&#35469;&#12375;&#12390;&#12356;&#12414;&#12377;&#12290;

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました