序文
今日、対人コミュニケーションは生活に欠かせないものになっています。名刺を相互に転送し、連絡先情報を記録する必要があります。名刺には、名前、会社、住所など、あらゆる種類の情報が記載されています。名刺に入力された各種情報を比較し、電話のキーボードを1つずつタップします。名刺認識がある場合は、この現象を元に戻して、名刺認識を簡単に完了し、名刺情報を入力できます。
名刺認識技術入門
名刺認識は、OCRテクノロジーを使用して、名刺上のテキストを編集可能な対応するテキストに変換および認識し、認識された名刺情報を分類および管理できます。写真認識、QRコード認識、インポート認識による名刺情報の収集に対応しており、携帯電話で撮影したプレビューボックスに名刺を入れるだけで、名刺認識の一連の操作が自動的に完了し、とても便利です。
開発前の準備手順
API開発作業を開始する前に、必要な開発準備を完了する必要があります。同時に、HMS Core SDKのMavenウェアハウスアドレスがプロジェクトで構成され、このサービスのSDK統合が完了していることを確認してください。
アンドロイドスタジオのインストール
非常にシンプルで、ダウンロードしてインストールするだけです。特定のダウンロードリンク:
Androidスタジオの公式ウェブサイトのダウンロードリンク:https://developer.android.com/studio
Androidスタジオのインストールプロセスのリファレンスリンク:https://www.cnblogs.com/xiadewang/p/7820377.html
プロジェクトレベルのgradleにHuaweimavenウェアハウスを追加します
AndroidStudioプロジェクトレベルのbuild.gradleファイルを開きます
メイヴンアドレス
buildscript-> repositoriesでHMSSDKのmavenウェアハウスアドレスを構成します
buildscript {
repositories {
maven {
url 'https://developer.huawei.com/repo/' }
}
}
すべてのプロジェクト->リポジトリでHMSSDKのmavenウェアハウスアドレスを構成します
allprojects {
repositories {
maven {
url 'https://developer.huawei.com/repo/' }
}
}
SDKを導入する
dependencies {
// Text recognition SDK.
implementation 'com.huawei.hms:ml-computer-vision-ocr:2.0.1.300'
// Text recognition model.
implementation 'com.huawei.hms:ml-computer-vision-ocr-cn-model:2.0.1.300'
implementation 'com.huawei.hms:ml-computer-vision-ocr-jk-model:2.0.1.300'
implementation 'com.huawei.hms:ml-computer-vision-ocr-latin-model:2.0.1.300'
}
}
マニフェストファイル
<manifest
...
<meta-data
android:name="com.huawei.hms.ml.DEPENDENCY"
android:value="ocr" />
...
</manifest>
権限
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.hardware.camera.autofocus" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.autofocus" />
動的許可申請
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
requestPermissions(new String[]{
Manifest.permission.CAMERA}, CAMERA_REQUEST);
開発の重要なステップ
1.画像内のテキストを認識するテキストアナライザーMLTextAnalyzerを作成し、カスタムパラメーターMLLocalTextSettingを使用してエンドサイドテキストアナライザーを構成します。
MLLocalTextSetting setting = new MLLocalTextSetting.Factory()
.setOCRMode(MLLocalTextSetting.OCR_DETECT_MODE)
.setLanguage("zh")
.create();
MLTextAnalyzer analyzer = MLAnalyzerFactory.getInstance()
.getLocalTextAnalyzer(setting);
2. android.graphics.Bitmapを使用してMLFrameを作成します。サポートされている画像形式は次のとおりです:jpg / jpeg / png / bmp。画像のアスペクト比の範囲:1:2〜2:1を入力することをお勧めします。
MLFrame frame = MLFrame.fromBitmap(bitmap);
3.生成されたMLFrameオブジェクトを「asyncAnalyseFrame」メソッドに渡してテキストを認識します。
Task<MLText> task = analyzer.asyncAnalyseFrame(frame);
task.addOnSuccessListener(new OnSuccessListener<MLText>() {
@Override
public void onSuccess(MLText text) {
// Recognition success.
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception e) {
// Recognition failure.
}
});
4.認識が完了したら、アナライザーを停止し、認識リソースを解放します。
try {
if (analyzer != null) {
analyzer.stop();
}
} catch (IOException e) {
// IOException
} catch (Exception e) {
// Exception
}
デモ効果
開発者がこのシナリオをよりよく理解できるように、名刺認識の効果を示すデモアプリも作成しました。
実装に興味がある場合は、Githubでソースコードをダウンロードできます:https://developer.huawei.com/ Consumer / cn / doc / HMSCore-Guides-V5 / text-recognition-0000001050040053-V5#ZH-CN_TOPIC_0000001050750207__section16220018134717