Package com.nefrock.edgeocr
Interface EdgeVisionAPI
public interface EdgeVisionAPI
EdgeVisionAPIは、EdgeOCR SDKのAPIです。
EdgeOCR SDKを使用する前に、ライセンス認証を行う必要があります。
NefrockLicenseAPI
を使用してライセンス認証を行ってください。-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic class
OCRエンジンを初期化するためのビルダークラスです。 OCRエンジンを初期化するには、このクラスのインスタンスを作成し、 `fromAssets`または`fromPath`メソッドを呼び出して、 OCRモデルを読み込む方法を指定した後に、`build`メソッドを呼び出してください。 -
Method Summary
Modifier and TypeMethodDescription利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。 実験的なモデルも含まれます。実験的なモデルは、精度・性能が不安定である可能性があります。boolean
isReady()
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>
OCR・バーコードモデルを読み込みます。モデル読み込みには時間がかかるため、`useModel` メソッドは非同期で実行されます。規定の設定が使用されます。モデルの設定を変更したい場合は、useModel(Model, ModelSettings)
を使用してください。com.google.common.util.concurrent.ListenableFuture<ModelInformation>
useModel
(Model model, LoadingCallback callback, ErrorCallback errorCallback) Deprecated.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
利用可能なOCR・バーコードモデルのリストを返します。`useModel`メソッドを使用してモデル を使用する前に、このメソッドを使用して利用可能なモデルを確認することをお勧めします。- Returns:
- 利用可能なOCRモデルのリスト
-
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
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
入力画像に対して文字・バーコードの検出・認識を行います。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
入力画像に対して文字・バーコードの検出・認識を行います。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
入力画像に対して文字・バーコードの検出・認識を行います。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
- 検出・認識に失敗した場合
-
useModel(Model)
を使用し、必要に応じて例外をキャッチしてください。