Interface EdgeVisionAPI


public interface EdgeVisionAPI
EdgeVisionAPIは、EdgeOCR SDKのAPIです。 EdgeOCR SDKを使用する前に、ライセンス認証を行う必要があります。 NefrockLicenseAPIを使用してライセンス認証を行ってください。
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
    OCRエンジンを初期化するためのビルダークラスです。 OCRエンジンを初期化するには、このクラスのインスタンスを作成し、 `fromAssets`または`fromPath`メソッドを呼び出して、 OCRモデルを読み込む方法を指定した後に、`build`メソッドを呼び出してください。
  • Method Summary

    Modifier and Type
    Method
    Description
    利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。
    利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。 実験的なモデルも含まれます。実験的なモデルは、精度・性能が不安定である可能性があります。
    boolean
    OCR・バーコードモデルが使用可能かどうかを返します。
    reportImage(androidx.camera.core.ImageProxy image, CropRect cropRect, String userMessage)
    読み取れない画像のフィードバックを送信します。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。
    reportImage(androidx.camera.core.ImageProxy image, String userMessage)
    読み取れない画像のフィードバックをスキャン結果と共に送信します。 useModelで選択したモデルによって、バーコードのみ、文字のみ、または両方を検出・認識します。 また、モデルのアスペクト比が固定である場合、画像の中心部分からアスペクト比を保ったまま 切り出せる最大のサイズに対してスキャンを行います。
    void
    スキャン状態をリセットします。検出・認識の履歴がクリアされます。
    scan(android.graphics.Bitmap image)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。 動画に対してではなく、静止画像に対しての利用を想定しているため同期的にOCRを行います。 android.graphics.Bitmap.Configの全てのバーコードフォーマットをサポートします。
    scan(android.graphics.Bitmap image, ScanOptions scanOptions)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 android.graphics.Bitmap.Configの全てのバーコードフォーマットをサポートします。
    scan(androidx.camera.core.ImageProxy image)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。
    scan(androidx.camera.core.ImageProxy image, ScanOptions scanOptions)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 scanOptionを用いて、スキャンの動作をカスタマイズすることができます。詳細は、 ScanOptionsを参照してください。
    scan(ByteBuffer imageBytes, int width, int height, int stride)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。 動画に対してではなく、静止画像に対しての利用を想定しているため同期的にOCRを行います。 imageBytesには、RGBA8888形式の画像データを使ってください。なお、ByteBufferは direct bufferである必要があります(https://developer.android.com/reference/java/nio/ByteBuffer#direct-vs.-non-direct-buffers) Androidのandroid.graphics.BitmapがgetConfigでARGB8888を返す場合は、実は RGBA8888形式の画像データです。
    scan(ByteBuffer imageBytes, int width, int height, int stride, ScanOptions scanOptions)
    入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 imageBytesには、RGBA8888形式の画像データを使ってください。なお、ByteBufferは direct bufferである必要があります(https://developer.android.com/reference/java/nio/ByteBuffer#direct-vs.-non-direct-buffers) Androidのandroid.graphics.BitmapがgetConfigでARGB8888を返す場合は、実は RGBA8888形式の画像データです。 scanOptionを用いて、スキャンの動作をカスタマイズすることができます。詳細は、 ScanOptionsを参照してください。
    com.google.common.util.concurrent.ListenableFuture<ModelInformation>
    useModel(Model model)
    OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。規定の設定が使用されます。モデルの設定を変更したい場合は、 useModel(Model, ModelSettings)を使用してください。
    com.google.common.util.concurrent.ListenableFuture<ModelInformation>
    useModel(Model model, LoadingCallback callback, ErrorCallback errorCallback)
    Deprecated.
    このメソッドは非推奨です。この関数の返り値のListenableFutureをgetすると、 errorCallbackを指定しても例外が発生する可能性があります。getで結果を待機したい場合は、 useModel(Model)を使用し、必要に応じて例外をキャッチしてください。
    com.google.common.util.concurrent.ListenableFuture<ModelInformation>
    useModel(Model model, ModelSettings settings)
    OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。settingsには、モデルの読み込み時に使用する設定を指定する ことができます。
    com.google.common.util.concurrent.ListenableFuture<ModelInformation>
    useModel(Model model, ModelSettings settings, LoadingCallback callback, ErrorCallback errorCallback)
    Deprecated.
    このメソッドは非推奨です。この関数の返り値のListenableFutureをgetすると、 errorCallbackを指定しても例外が発生する可能性があります。getで結果を待機したい場合は、 useModel(Model, ModelSettings)を使用し、必要に応じて例外をキャッチしてください。
  • Method Details

    • isReady

      boolean isReady()
      OCR・バーコードモデルが使用可能かどうかを返します。
      Returns:
      OCRエンジンが使用可能な場合はtrue、それ以外の場合はfalse
    • availableModels

      List<Model> availableModels()
      利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。
      Returns:
      利用可能なOCRモデルのリスト
    • availableModelsWithExperimental

      List<Model> availableModelsWithExperimental()
      利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。 実験的なモデルも含まれます。実験的なモデルは、精度・性能が不安定である可能性があります。
      Returns:
      利用可能なOCRモデルのリスト
    • resetScanningState

      void resetScanningState()
      スキャン状態をリセットします。検出・認識の履歴がクリアされます。
    • useModel

      @Deprecated com.google.common.util.concurrent.ListenableFuture<ModelInformation> useModel(@NonNull Model model, @NonNull ModelSettings settings, @Nullable LoadingCallback callback, @Nullable ErrorCallback errorCallback)
      Deprecated.
      このメソッドは非推奨です。この関数の返り値のListenableFutureをgetすると、 errorCallbackを指定しても例外が発生する可能性があります。getで結果を待機したい場合は、 useModel(Model, ModelSettings)を使用し、必要に応じて例外をキャッチしてください。
      OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。モデルの読み込みが完了すると、`callback`が呼び出されます。 モデルの読み込み中にエラーが発生した場合は、`errorCallback`が呼び出されます。 settingsには、モデルの読み込み時に使用する設定を指定することができます。
      Parameters:
      model - OCR・バーコードモデル
      settings - モデルの設定
      callback - モデルの読み込みが完了したときに呼び出されるコールバック
      errorCallback - モデルの読み込み中にエラーが発生したときに呼び出されるコールバック
      Returns:
      読み込まれたモデルの情報のfuture
    • useModel

      com.google.common.util.concurrent.ListenableFuture<ModelInformation> useModel(@NonNull Model model, @NonNull ModelSettings settings)
      OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。settingsには、モデルの読み込み時に使用する設定を指定する ことができます。
      Parameters:
      model - OCR・バーコードモデル
      settings - モデルの設定
      Returns:
      読み込まれたモデルの情報のfuture
    • useModel

      @Deprecated com.google.common.util.concurrent.ListenableFuture<ModelInformation> useModel(@NonNull Model model, @Nullable LoadingCallback callback, @Nullable ErrorCallback errorCallback)
      Deprecated.
      このメソッドは非推奨です。この関数の返り値のListenableFutureをgetすると、 errorCallbackを指定しても例外が発生する可能性があります。getで結果を待機したい場合は、 useModel(Model)を使用し、必要に応じて例外をキャッチしてください。
      OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。モデルの読み込みが完了すると、`callback`が呼び出されます。 モデルの読み込み中にエラーが発生した場合は、`errorCallback`が呼び出されます。 規定の設定が使用されます。モデルの設定を変更したい場合は、 useModel(Model, ModelSettings, LoadingCallback, ErrorCallback)を使用してください。
      Parameters:
      model - OCR・バーコードモデル
      callback - モデルの読み込みが完了したときに呼び出されるコールバック
      errorCallback - モデルの読み込み中にエラーが発生したときに呼び出されるコールバック
      Returns:
      読み込まれたモデルの情報のfuture
    • useModel

      com.google.common.util.concurrent.ListenableFuture<ModelInformation> useModel(@NonNull Model model)
      OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。規定の設定が使用されます。モデルの設定を変更したい場合は、 useModel(Model, ModelSettings)を使用してください。
      Parameters:
      model - OCR・バーコードモデル
      Returns:
      読み込まれたモデルの情報のfuture
    • reportImage

      ScanResult reportImage(@NonNull androidx.camera.core.ImageProxy image, @NonNull String userMessage) throws EdgeError
      読み取れない画像のフィードバックをスキャン結果と共に送信します。 useModelで選択したモデルによって、バーコードのみ、文字のみ、または両方を検出・認識します。 また、モデルのアスペクト比が固定である場合、画像の中心部分からアスペクト比を保ったまま 切り出せる最大のサイズに対してスキャンを行います。
      Parameters:
      image - 入力画像(ImageProxy)
      userMessage - 画像送信時に付与するメッセージ
      Returns:
      入力画像に写っている文字列・バーコードの位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 画像送信に失敗した場合
    • reportImage

      ScanResult reportImage(@NonNull androidx.camera.core.ImageProxy image, @NonNull CropRect cropRect, @NonNull String userMessage) throws EdgeError
      読み取れない画像のフィードバックを送信します。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。
      Parameters:
      image - 入力画像(ImageProxy)
      cropRect - クロップの位置とサイズ
      userMessage - 画像送信時に付与するメッセージ
      Returns:
      入力画像に写っている文字列・バーコードの位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 画像送信に失敗した場合
    • scan

      ScanResult scan(@NonNull androidx.camera.core.ImageProxy image) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。

      scan(ImageProxy, ScanOptions)において ScanOptionsの設定値を、 scanModeをScanOptions.ScanMode.DEFAULT、 cropRectをCropRect(0.5, 0.5, 1.0, 1.0)、 barcodeFormatsをBarcodeFormat.Anyとして呼び出すのと同様です。

      Parameters:
      image - 入力画像(ImageProxy)
      Returns:
      入力画像に写っている文字列・バーコードの位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合
    • scan

      ScanResult scan(@NonNull androidx.camera.core.ImageProxy image, @NonNull ScanOptions scanOptions) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 scanOptionを用いて、スキャンの動作をカスタマイズすることができます。詳細は、 ScanOptionsを参照してください。
      Parameters:
      image - 入力画像(ImageProxy)
      scanOptions - クロップの位置、スキャンモードを指定するオプション
      Returns:
      入力画像に写っている文字列の位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合
    • scan

      ScanResult scan(@NonNull android.graphics.Bitmap image) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。 動画に対してではなく、静止画像に対しての利用を想定しているため同期的にOCRを行います。 android.graphics.Bitmap.Configの全てのバーコードフォーマットをサポートします。
      Parameters:
      image - 入力画像(Bitmap)
      Returns:
      入力画像に写っている文字列・バーコードの位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合
      See Also:
    • scan

      ScanResult scan(@NonNull android.graphics.Bitmap image, @NonNull ScanOptions scanOptions) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 android.graphics.Bitmap.Configの全てのバーコードフォーマットをサポートします。
      Parameters:
      image - 入力画像(ImageProxy)
      scanOptions - クロップの位置、スキャンモードを指定するオプション
      Returns:
      入力画像に写っている文字列の位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合
      See Also:
      • Bitmap.Config scanOptionを用いて、スキャンの動作をカスタマイズすることができます。詳細は、 ScanOptionsを参照してください。
    • scan

      ScanResult scan(@NonNull ByteBuffer imageBytes, int width, int height, int stride) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。また、モデルのアスペクト比が固定 である場合、画像の中心部分からアスペクト比を保ったまま切り出せる最大のサイズに対してスキャン を行います。 動画に対してではなく、静止画像に対しての利用を想定しているため同期的にOCRを行います。 imageBytesには、RGBA8888形式の画像データを使ってください。なお、ByteBufferは direct bufferである必要があります(https://developer.android.com/reference/java/nio/ByteBuffer#direct-vs.-non-direct-buffers) Androidのandroid.graphics.BitmapがgetConfigでARGB8888を返す場合は、実は RGBA8888形式の画像データです。
      Parameters:
      imageBytes - 入力画像のバイナリデータ(ByteBuffer)
      width - 入力画像の幅
      height - 入力画像の高さ
      stride - 入力画像のストライド
      Returns:
      入力画像に写っている文字列・バーコードの位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合
    • scan

      ScanResult scan(@NonNull ByteBuffer imageBytes, int width, int height, int stride, @NonNull ScanOptions scanOptions) throws EdgeError
      入力画像に対して文字・バーコードの検出・認識を行います。useModelで選択したモデルによって、 バーコードのみ、文字のみ、または両方を検出・認識します。 imageBytesには、RGBA8888形式の画像データを使ってください。なお、ByteBufferは direct bufferである必要があります(https://developer.android.com/reference/java/nio/ByteBuffer#direct-vs.-non-direct-buffers) Androidのandroid.graphics.BitmapがgetConfigでARGB8888を返す場合は、実は RGBA8888形式の画像データです。 scanOptionを用いて、スキャンの動作をカスタマイズすることができます。詳細は、 ScanOptionsを参照してください。
      Parameters:
      imageBytes - 入力画像(ImageProxy)
      width - 入力画像の幅
      height - 入力画像の高さ
      stride - 入力画像のストライド
      scanOptions - クロップの位置、スキャンモードを指定するオプション
      Returns:
      入力画像に写っている文字列の位置情報、内容及びOCR結果の確からしさに関する情報
      Throws:
      EdgeError - 検出・認識に失敗した場合