91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Unity怎么實現OCR文字識別功能

發布時間:2022-01-04 12:54:37 來源:億速云 閱讀:381 作者:柒染 欄目:開發技術

今天就跟大家聊聊有關Unity怎么實現OCR文字識別功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

首先登陸百度開發者中心,搜索文字識別服務:

Unity怎么實現OCR文字識別功能

創建一個應用,獲取AppID、APIKey、SecretKey秘鑰信息:

Unity怎么實現OCR文字識別功能

Unity怎么實現OCR文字識別功能

下載C# SDK,將AipSdk.dll動態庫導入Unity:

Unity怎么實現OCR文字識別功能

Unity怎么實現OCR文字識別功能

本文以通用文字識別為例,查閱官方文檔,以下是通用文字識別的返回數據結構:

Unity怎么實現OCR文字識別功能

在Unity中定義相應的數據結構:

using System;
 
/// <summary>
/// 通用文字識別
/// </summary>
[Serializable]
public class GeneralOcr
{
    /// <summary>
    /// 圖像方向 -1未定義 0正弦 1逆時針90度 2逆時針180度 3逆時針270度
    /// </summary>
    public int direction;
    /// <summary>
    /// 唯一的log id,用于問題定位
    /// </summary>
    public int log_id;
    /// <summary>
    /// 識別結果數,表示words_result的元素個數
    /// </summary>
    public int words_result_num;
    /// <summary>
    /// 定位和識別結果數組
    /// </summary>
    public string[] words_result;
    /// <summary>
    /// 行置信度信息
    /// </summary>
    public Probability probability;
}
 
/// <summary>
/// 行置信度信息
/// </summary>
[Serializable]
public class Probability
{
    /// <summary>
    /// 行置信度平均值
    /// </summary>
    public int average;
    /// <summary>
    /// 行置信度方差
    /// </summary>
    public int variance;
    /// <summary>
    /// 行置信度最小值
    /// </summary>
    public int min;
}

下面是調用時傳入的相關參數:

Unity怎么實現OCR文字識別功能

封裝調用函數:

using System;
using System.Collections.Generic;
using UnityEngine;
 
public class OCR 
{
    //以下信息于百度開發者中心創建應用獲取
    private const string appID = "";
    private const string apiKey = "";
    private const string secretKey = "";
 
    /// <summary>
    /// 通用文字識別
    /// </summary>
    /// <param name="bytes">圖片字節數據</param>
    /// <param name="language">識別語言類型 默認CHN_ENG中英文混合</param>
    /// <param name="detectDirection">是否檢測圖像朝向</param>
    /// <param name="detectLanguage">是否檢測語言,當前支持中、英、日、韓</param>
    /// <param name="probability">是否返回識別結果中每一行的置信度</param>
    /// <returns></returns>
    public static GeneralOcr General(byte[] bytes, string language = "CHN_ENG", bool detectDirection = false, bool detectLanguage = false, bool probability = false)
    {
        var client = new Baidu.Aip.Ocr.Ocr(apiKey, secretKey);
        try
        {
            var options = new Dictionary<string, object>
            {
                { "language_type", language },
                { "detect_direction", detectDirection },
                { "detect_language", detectLanguage },
                { "probability", probability }
            };
            var response = client.GeneralBasic(bytes, options);
            GeneralOcr generalOcr = JsonUtility.FromJson<GeneralOcr>(response.ToString());
            return generalOcr;
        }
        catch (Exception error)
        {
            Debug.LogError(error);
        }
        return null;
    }
}

以上是傳入圖片字節數據調用接口的方式,也可以通過URL調用,只需將GeneralBasic換為重載函數GeneralBasicUrl:

Unity怎么實現OCR文字識別功能

測試圖片:

Unity怎么實現OCR文字識別功能

OCR.General(File.ReadAllBytes(Application.dataPath + "/Picture.jpg"));

Unity怎么實現OCR文字識別功能

看完上述內容,你們對Unity怎么實現OCR文字識別功能有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

富川| 闵行区| 南召县| 扎赉特旗| 万年县| 文昌市| 阳朔县| 饶河县| 晋州市| 唐海县| 麻江县| 长海县| 新昌县| 焉耆| 卢龙县| 汉源县| 芷江| 长春市| 金寨县| 册亨县| 景东| 乳源| 孝义市| 临清市| 永顺县| 儋州市| 汕尾市| 平武县| 项城市| 衢州市| 通辽市| 报价| 汉沽区| 河北区| 广安市| 东宁县| 莎车县| 德庆县| 吴江市| 海南省| 辽宁省|