#include <iostream>
#include "ocr.h"   // 用于调用接口
#include <string>  // 用于 string 的操作
#include <codecvt> // 用于转码

using namespace std;

int main(int argc, char const *argv[]) // argc: 参数个数, argv: 参数列表
{
    if (argc < 2)
    {
        cout << "Usage: " << argv[0] << "车牌照片路径" << endl;
        return -1;
    }

    string app_id = "35458273";                             // 你的 App ID
    string api_key = "i45yQx4IaGoxxULLDVPl4iNj";            // 你的 Api Key
    string secret_key = "jnt90aTbXCOp9L7gRB1xq1C3iT0bLuie"; // 你的 Secret Key

    aip::Ocr client(app_id, api_key, secret_key); // 新建一个对象, 用于调用接口, 调用通用文字识别, 图片参数为本地图片
    cout << "ok" << endl;

    // 定义 json 格式的数据类型 Value, result 是 json 类型的 Value 类实例, 用于存储返回的结果
    Json::Value result;
    string image;

    // 加载本地的车牌图片内容到 image 对象中, 用于调用车牌识别
    // aip::get_file_content("R-C.jpg", &image);
    aip::get_file_content(argv[1], &image);

    // 客户端发送图片内容到百度服务器, 并返回结果到 result 对象中
    result = client.license_plate(image, aip::null);
    // cout << result << endl;
    cout << "车牌颜色: " << result["words_result"]["color"] << endl;
    cout << "车牌号码: " << result["words_result"]["number"].asString() << endl;

    return 0;
}