• ベストアンサー

Sikuliで数字のみ

sikuliのOCR機能で数字を読み取ってますが、誤認識します。 6桁の数字しか表示されない部分をOCRで読み取ってますが、時々アルファベットと認識してしまいます。例えば数字のゼロをアルファベットのオーなど。 数字のみに特化する方法はありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • SPIKE-NLOS
  • ベストアンサー率33% (522/1540)
回答No.1

はい、SikuliのOCR機能で数字のみに特化する方法はいくつかあります。 * **正規表現を使用します。** 正規表現は、テキストを検索して一致するものを特定するために使用できるパターンです。SikuliのOCR機能では、正規表現を使用して、数字のみを読み取ることができます。例えば、次の正規表現は、数字のみを一致させます。 ``` [0-9]+ ``` * **パターンをキャプチャします。** パターンをキャプチャすると、OCRで読み取ったテキストの中から特定の部分を抽出することができます。SikuliのOCR機能では、パターンをキャプチャして、数字のみを抽出することができます。例えば、次のコードは、OCRで読み取ったテキストから数字のみを抽出します。 ``` import org.sikuli.script.ImageRegion; import org.sikuli.script.Match; // 画像領域を取得します。 ImageRegion region = new ImageRegion(image); // OCRでテキストを読み取ります。 Match match = region.find(pattern); // テキストから数字のみを抽出します。 String text = match.getRegion().getText(); ``` * **カスタム OCR エンジンを使用します。** Sikuliは、Tesseract OCR エンジンを使用しています。Tesseract OCR エンジンは、非常に優れたOCRエンジンですが、完璧ではありません。数字のみに特化したOCRエンジンを使用することで、より正確に数字を読み取ることができます。 これらの方法を組み合わせることで、SikuliのOCR機能でより正確に数字を読み取ることができます。

nanndedanazoda
質問者

お礼

ありがとうございました。

関連するQ&A

  • 数字を返す関数

    Excelの関数について教えてください。 「C12」→「012」 「C7」→「007」 というように、頭文字の「C」を取って残った数字部分を3桁で表示する方法について教えてください。 置換とか関数を使うのではないかと思いますが、関数一発とかでできなくても構いません。 例えば、まずアルファベットを取り払う過程を経た上で、残った数字を3桁で表示するといった方法でもいいです。 お手数おかけしますが、よろしくお願いします。

  • 有効数字とはなんですか?

    中学生にもわかるように説明してくだされば幸いです。 色々調べたのですが、よくわからなくて、、 以下の認識で合ってますか? 認識:近似値や測定値を表す数字のうち,実用上有意義な桁数だけとった数字。 また、「有効桁数」とは、有効数字の桁数のこと。 例えば、1.2345という数字があったとしたら、実用上有意義な桁数が3なら、有効数字は1.23で、有効桁数は3桁。 また、0の処理については以下の通り。 0ではない数字に挟まれた0は有効である。例えば、 60.8 は有効数字3桁である。 39008 は有効数字5桁である。 0ではない数字より前に0がある場合、その0は有効ではない。例えば、 0.093827 は有効数字5桁である。 0.0008 は有効数字1桁である。 0.012 は有効数字2桁である。 小数点より右にある0は有効である。例えば、 35.00 は有効数字4桁である。 8 000.000000 は有効数字10桁である。

  • エクセルで文字が混じった数字を並べ替えしたいのですが

    どなたか、お力お貸し頂けませんか? 一言でも、アドバイス頂ければ幸いです!! エクセルで、製品の機番の並び替えをしたいです。 111234 223452 123A11 123B23 455A67 こんな感じで、機番が並んでいます。(本当は10桁だけどわかりやすくするため減らしてます) 困ったのは、機番にアルファベットが混じっているので、単純に照準で並べ替えると、アルファベット混じりでない数字のみが先にきて、アルファベット混じりが後に続くことです。 実は、アルファベットの前の数字を基準に並べ替えたいのです。(そして更に、アルファベット前の数字が同じな場合、以降のアルファベットはABC順に並べたい) 私が考えた方法は、 LEFT関数を使って、アルファベット前の数字だけ出して、(幸いなことに、アルファベットのある場所が、最初から4番目と決まっています、なので、これが使えると思って)、それを基準に昇順に並べ替える方法。 隣の列には、アルファベット含む全10桁の機番をそのまま付けておけば、これで自然と、アルファベットもABC順になってくれるみたいなので。 そして更に、アルファベットの混じっている機番だけが左詰めになってしまうので、数字のみの機番と見やすく揃えるため、セルの書式設定で、右か左のどちらか詰めに直します。 これでも、できるはできると思うのですが・・ このやり方では?という方法や何かアドバイスいただければ、とっても幸いです。 (機番が全部で1000個以上あって、これから私が在庫管理をまかされる機番の種類は、アルファベットが2個混じってるものや、混じってる位置もばらばらなものもあるようです><;アルファベットが最初と最後から3番目に混じってる機種とか・・(++;)今回はとりあえず、最初から4桁目がアルファベットの機種の機番のやり方だけでもと思い、ご相談させて頂きました) どうぞ宜しくお願い致しますm(__)m

  • エクセルに数字が正しく入れられないのです

    16桁の数字を入力したところ、最後の数字「5」を入れると「0」になってしまいます。 書式設定が「標準」になっていたので最初は6桁+Eなどとなってしまったので、「数値」に変えたら16桁は表示できたのですが、最後の数字だけかわってしまいます。16桁というのがいけないのでしょうか? 正しく表示する方法を教えてください。よろしくお願いします。ソフトは2003です。

  • Excel2000のアルファベットが数字に?

    見ていただきありがとうございます。 早速ですが、Execl2000を使っているのですが、上に ABCとかアルファベットがあり、左に数字でA1のセルとか言いますよね。 それが、何故かアルファベットの部分が数字になってしまったるんです。 これをアルファベットに直す方法を教えて下さい。 まったくの初心者ですのでよろしくお願いします。

  • Excelの数字を、数字の組み合わせにしたい

    またまた、助けてください。 大変困っています。 Excelで管理しているシートで数字を、数字の組み合わせにしたい思っています。 ただ、ある部分だけ、数字が2桁になったり1桁になったりします。 これを解消したいと思っています。 例1: A1に120345.6789と入れたら、 これを:B1で12度3分45.6789秒と表示したい。 もしくは、 例2: A1に123456.7891と入れたら、 これを:B1で12度34分56.7891秒と表示したい。 なにとぞよろしくお願いします。

  • 洋服についている品質表示の数字の意味を教えて下さい

    品質表示には素材や洗濯方法が書かれてありますよね。 それ以外に、アルファベットと数字を組み合わせたものや、 6ケタくらいの数字が書かれてあるのですが、 これは何を意味しているのでしょうか? 例えば、手持ちのワンピースには 「220-5.CCK.PM  YA.0906(1)」 と 「487678」 と記載されています。意味をご存知の方教えて下さい。 宜しくお願い致します。

  • 数字の桁数を指定して表示

    いつもありがとうございます。 数字の表示方法で 1 → 01 5 → 05 10 → 10 数字を2桁や3桁にして表示する方法を教えて下さい。

    • ベストアンサー
    • PHP
  • 登録単語中の半角数字が全角数字に変わってしまう。

    WindowsXP, Word2003, ATOK2007 の組合せで、仕事をしております。 単語登録した単語の中に、半角の数字が入っていると、この単語を呼び出したときに、数字の部分だけが自動的に全角の数字に変わってしまいます。 boeing797 と登録しておくと、boeing797と出てくるのです。 数日前まではこのようなことは起こりませんでした。 カナやアルファベットではこのようなことは起こっておりません。 正確に言えば、カナやアルファベットでは、最初に半角が出、変換キーを何回も押せば、全角も出せます。数字の場合全角のみが出るのです。 1.何故、突然このようなことが起こったのでしょう。 2.対策を教えていただけますか。 3.単語登録は、Windows の機能でしょうか。Word あるいは ATOK の機能でしょうか。 4.この現象と関係ありませんが、単語の登録をキャンセルする方法を教えて下さい。

  • 数字の桁数を揃えたい(0→01のように)

    数字をalert文で表示するときに、 桁数を2桁で出力したいのですが、どのような方法を取るのが良いでしょうか? 数字が1桁(0~9)の時に先頭に0を付けたいのです。

専門家に質問してみよう