2011-11-17 3 views
8

私は7-セグメント表示の形で数字の形(1〜9)を描くことを計画しています。どのような数字が抽出されたのかを検出する最良の方法は何ですか?iPhoneの画面上でユーザーの指で描かれた数字を認識する最良の方法

私はすべてのタッチ追跡とUIGestureRecogniserのものを行う方法を知っている - 私はそれを行うための良いロジックを探しています。

これまでのところ、私が持っている:タッチが他にセグメントの1半分から移動 すると、そのSEGを強調。タッチが終了したら、どのセグがハイライト表示されているかを確認し、描いた数字を決めます。 画面上で指のパスの形状を描く:私はそれを改善すると考えてきました

方法。線がsegの中央と交差する場合は、そのsegをハイライトします。

誰でもこれを行うためのヒントや良い方法がありますか?私はすべての提案を公開しています。たとえそれがすべてのコードを廃止し、ゼロから始めることを意味しています。

+0

それは、ユーザーが最初にアプリケーションを訓練持っている必要があるだろうと思われるので、彼らが0引く - あなたは数を決定しようとしているところ9回のカップルを、あなたは彼らがそれを行う方法を見つけ出すこと、そして、彼らはそれを行います。がんばろう。 –

+0

このセグメント手法を使用する必要がありますか?これはおそらく、いくつかのニューラルネットワークが解決するのには完璧です。 – janoliver

+0

提案していただきありがとうございます。私は神経ネットワークの考えを試してみる – Craig

答えて

6

私は、描画認識に$ストローク認識プログラムの実装を使用しました。

  • $N Multistroke recognizer
  • 両方アルゴリズム

  • $1 Unistroke recognizer
    • は、いくつかのObjective-C/IOSの実装にリンクします。

      認識は異なるアルゴリズム(リンクされたページ上で利用可能な詳細な説明)に基づいて、事前定義されたパターンに対して入力を比較します。これを行うには、独自の数値パターンを作成する必要があります(基本的には何かを描き、後で使用するために保存するデータ構造に変換します)。次に、以前に記録したパターンと比較して、ユーザー入力に一致するものを見つけます。

      $ 1、認識は、私は数字を描く練習する最初のユーザー列を聞かせ自分のアプリケーションのために十分でした。 $ N認識器は、より複雑なストークスを区別することができ、より複雑な描画数を受け入れる可能性があります。これはあなたが試してみなければならないものです。

    +0

    その情報のために大変ありがとう。悲しいことに、$ 1認識ツールの最初のobj-cプロジェクトリンクは壊れていますが、できるだけ早く試してくれるものがあります。 – Craig

    +0

    今日これを試してみましょう:https://github.com/preble/GLGestureRecognizer。それがうまくいくとうれしいです。素晴らしいリンクについてもう一度おねがいします! – Craig

    +0

    喜んで助けになる –

    2

    番号1-9の検出に興味がある場合は、BGNumericalGlyphRecognizerをご覧ください。私はScribbleMath(子供たちが画面上に答えを描くことを可能にする数学アプリ)を作成し、コアロジックをオープンソース化するために、$ Nマルチストローク認識ツールを使って数ヶ月を費やしました。それは$ N認識器が6と9を区別するのに苦労し、1や " - "のような非常に単純な文字を認識することにも悪いことが分かりました。それは完璧ではありませんが、$ Nの認識ツールよりもさらに離れてしまいます。楽しい!

    関連する問題