news 2026/6/27 1:13:12

百度 AI API 调用速查表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
百度 AI API 调用速查表

本速查表基于项目中使用的 5 个核心识别功能(植物、动物、车辆、车牌、菜品)整理,涵盖 API 调用的核心要素(客户端、方法名、参数、结果字段等),方便开发时快速查阅,减少重复查文档的成本。

识别类型核心客户端API 方法名必传参数常用可选参数结果存储节点关键结果字段(示例)
植物识别ImageClassifyPlantDetectimage(byte[])无(默认返回所有结果)"result"- name:植物名称(如 “玫瑰”)- score:相似度(0-1,如 0.92)
动物识别ImageClassifyAnimalDetectimage(byte[])无(默认返回所有结果)"result"- name:动物名称(如 “金毛寻回犬”)- score:相似度(0-1,如 0.89)
车辆识别ImageClassifyCarDetectimage(byte[])top_num(返回结果数)"result"- name:车辆型号(如 “宝马 3 系 2020 款”)- score:相似度(0-1,如 0.95)
车牌识别OcrLicensePlateimage(byte[])multi_detect(多车牌)"words_result"- color:车牌颜色(如 “blue”)- number:车牌号码(如 “京 A12345”)
菜品识别ImageClassifyDishDetectimage(byte[])top_num(返回结果数)"result"- name:菜品名称(如 “宫保鸡丁”)- calorie:卡路里(每 100g,如 “150kcal”)- probability:相似度(0-1,如 0.91)

一、通用调用步骤(所有功能通用)

  1. 初始化客户端

    :传入百度 AI 的API_KEY和SECRET_KEY

    创建对应客户端(ImageClassify或Ocr)。

    // 图像分类客户端(植物/动物/车辆/菜品) ImageClassify classifyClient = new ImageClassify(API_KEY, SECRET_KEY); // OCR客户端(车牌识别) Ocr ocrClient = new Ocr(API_KEY, SECRET_KEY);
  2. 设置超时时间

    (可选,默认可能较短,建议设置为 60 秒):

    classifyClient.Timeout = 60000; // 单位:毫秒 ocrClient.Timeout = 60000;
  3. 读取图片为字节数组

    (API 要求的统一输入格式):

    // 方式1:直接读取(可能锁定文件,适合简单场景) byte[] imageBytes = File.ReadAllBytes("图片路径.jpg"); // 方式2:流读取(避免文件锁定,推荐生产环境) using (var stream = new FileStream("图片路径.jpg", FileMode.Open, FileAccess.Read)) { byte[] imageBytes = new byte[stream.Length]; stream.Read(imageBytes, 0, imageBytes.Length); }
  4. 调用 API 并解析结果:根据识别类型调用对应方法,从返回的JObject中提取结果(需引用Newtonsoft.Json.Linq)。

二、各功能调用示例(含参数配置)

1. 植物识别(无可选参数)

// 1. 调用API var result = classifyClient.PlantDetect(imageBytes); // 2. 解析结果 if (result.ContainsKey("result") && result["result"] is JArray plantList) { foreach (JObject plant in plantList) { string name = plant["name"]?.ToString() ?? "未知植物"; double score = plant["score"]?.ToObject<double>() ?? 0; Console.WriteLine($"植物:{name},相似度:{score:F2}"); } }

2. 车辆识别(带 top_num 参数)

// 1. 配置可选参数(只返回前3个相似度最高的结果) var carOptions = new Dictionary<string, object> { {"top_num", 3} }; // 2. 调用API var result = classifyClient.CarDetect(imageBytes, carOptions); // 3. 解析结果 if (result.ContainsKey("result") && result["result"] is JArray carList) { foreach (JObject car in carList) { string name = car["name"]?.ToString() ?? "未知车辆"; double score = car["score"]?.ToObject<double>() ?? 0; Console.WriteLine($"车辆:{name},相似度:{score:F2}"); } }

3. 车牌识别(带 multi_detect 参数)

// 1. 配置可选参数(允许识别图片中的多个车牌) var plateOptions = new Dictionary<string, object> { {"multi_detect", "true"} }; // 2. 调用API(注意使用Ocr客户端) var result = ocrClient.LicensePlate(imageBytes, plateOptions); // 3. 解析结果(结果存在于"words_result"节点) if (result.ContainsKey("words_result") && result["words_result"] is JArray plateList) { foreach (JObject plate in plateList) { string colorCode = plate["color"]?.ToString() ?? "unknown"; string color = colorCode == "blue" ? "蓝色" : colorCode == "yellow" ? "黄色" : "未知"; string number = plate["number"]?.ToString() ?? "未知号码"; Console.WriteLine($"车牌:{color}({number})"); } }

4. 菜品识别(带 top_num 参数,结果含卡路里)

// 1. 配置可选参数(只返回前4个菜品结果) var dishOptions = new Dictionary<string, object> { {"top_num", 4} }; // 2. 调用API var result = classifyClient.DishDetect(imageBytes, dishOptions); // 3. 解析结果(相似度字段为probability,非score) if (result.ContainsKey("result") && result["result"] is JArray dishList) { foreach (JObject dish in dishList) { string name = dish["name"]?.ToString() ?? "未知菜品"; string calorie = dish["calorie"]?.ToString() ?? "未知"; double probability = dish["probability"]?.ToObject<double>() ?? 0; Console.WriteLine($"菜品:{name},卡路里:{calorie}/100g,相似度:{probability:F2}"); } }

三、关键注意事项

  1. 客户端与功能对应:

    • 植物、动物、车辆、菜品识别必须使用ImageClassify客户端。

    • 车牌识别必须使用Ocr客户端,混用会导致 API 调用失败。

  2. 结果字段差异:

    • 植物、动物、车辆的相似度字段为"score"

    • 菜品的相似度字段为"probability"(百度 API 设计差异,需特别注意)。

    • 车牌识别的结果节点为"words_result",其他功能为"result"

  3. 参数值类型:

    • 可选参数的值需为object类型,如top_num3(int),multi_detect"true"(string),需严格按照百度 API 文档要求传值。

  4. 异常处理:

    • 调用 API 前需确保图片文件存在且可读,避免IOException

    • 网络异常(如无网络、超时)或 API 错误(如密钥无效、图片过大)会抛出Exception,需通过try-catch捕获并提示用户。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/26 1:00:57

LinuxServer.io LibreOffice 容器化部署指南

概述 LIBREOFFICE 是一款免费且功能强大的办公套件&#xff0c;作为 OpenOffice.org 的继任者&#xff0c;其简洁的界面和丰富的工具集能够有效提升用户的创造力与生产力。LinuxServer.io 团队提供的 LIBREOFFICE 容器镜像具有定期应用更新、简单的用户映射&#xff08;PGID/P…

作者头像 李华
网站建设 2026/6/25 14:25:28

阿里Wan2.2开源指南:如何用140亿参数模型创作电影级AI视频

&#x1f680; 2025年7月&#xff0c;阿里巴巴通义万相团队震撼发布Wan2.2开源视频生成模型&#xff0c;这款支持文本和图像双模态输入的AI创作工具&#xff0c;正在重新定义视频内容生产的效率边界与创意高度。作为全球首个采用MoE混合专家系统的视频基础模型&#xff0c;Wan2…

作者头像 李华
网站建设 2026/6/25 15:46:12

Spring AI对话记忆并发管理:5大核心挑战与优化实战

Spring AI对话记忆并发管理&#xff1a;5大核心挑战与优化实战 【免费下载链接】spring-ai An Application Framework for AI Engineering 项目地址: https://gitcode.com/GitHub_Trending/spr/spring-ai 在多用户AI对话系统中&#xff0c;对话记忆的并发管理一直是技术…

作者头像 李华
网站建设 2026/6/26 8:20:15

Deep Image Prior中的感知损失:从像素匹配到特征对齐的技术演进

在图像恢复领域&#xff0c;传统方法主要依赖像素级别的匹配误差&#xff0c;但这种方法往往无法有效保持图像的结构信息和视觉质量。Deep Image Prior项目通过引入感知损失&#xff08;Perceptual Loss&#xff09;&#xff0c;实现了从简单的像素比较到深度特征对齐的技术跨越…

作者头像 李华
网站建设 2026/6/27 0:05:58

2025年最值得尝试的5个网盘直链解析技巧:让下载速度翻倍的秘密武器

2025年最值得尝试的5个网盘直链解析技巧&#xff1a;让下载速度翻倍的秘密武器 【免费下载链接】netdisk-fast-download 各类网盘直链解析, 已支持蓝奏云/奶牛快传/移动云云空间/UC网盘/小飞机盘/亿方云/123云盘等. 预览地址 https://lz.qaiu.top 项目地址: https://gitcode.…

作者头像 李华
网站建设 2026/6/25 22:26:42

HoRNDIS终极指南:5分钟搞定Mac与Android的USB网络共享

还在为Mac电脑无法使用Android手机的USB网络共享而烦恼吗&#xff1f;HoRNDIS正是你需要的解决方案&#xff01;这个强大的驱动程序让Mac OS X系统能够完美支持Android设备的原生USB网络共享功能&#xff0c;为你带来高速稳定的有线网络连接体验。 【免费下载链接】HoRNDIS And…

作者头像 李华