Taip

调用腾讯 AI 接口的 Java 客户端
授权协议 MIT
开发语言 Java
所属分类 程序开发、 TTS/语音合成和处理
软件类型 开源软件
地区 国产
投 递 者 燕实
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

TAIP 是调用腾讯 AI 接口的 Java 客户端,为调用腾讯 AI 功能的开发人员提供了一系列的交互方法。

目前已经接入

【face人脸识别】

  • 人脸检测与分析、多人脸检测、人脸对比、跨年龄人脸识别、五官定位、人脸识别、人脸验证、个体创建、删除个体、增加人脸、删除人脸、设置信息、获取信息、获取组列表、获取个体列表、获取人脸列表、获取人脸信息接口调用服务

【ptu图片特效】

  • 人脸美妆、人脸变妆、图片滤镜(天天P图)、图片滤镜(AI Lab)、人脸融合、大头贴、颜龄检测接口调用服务

自然语言处理TAipNlp】

  • ( 分词、词性标注、专有名词识别、同义词识别、意图成分识别、情感分析、基础闲聊、文本翻译(AI Lab)、文本翻译(翻译君)、图片翻译 、语音翻译、语种识别 )接口调用服务

智能鉴黄、暴恐图片识别TAipVision】

  • ( 智能鉴黄、暴恐图片识别)接口调用服务

语音合成、识别TAipSpeech】

  • (语音识别-echo版、语音识别-流式版(AI Lab)、语音识别-流式版(WeChat AI)、长语音识别、语音合成(AI Lab)、语音合成(优图))接口调用服务

文字识别TAipOcr】

  • (身份证识别、名片识别、行驶证驾驶证识别、营业执照识别、银行卡识别、通用OCR识别)接口调用服务

图像识别TAipImageClassify】

  • (物体场景识别、图片标签识别、花草/车辆识别、看图说话、模糊图片检测、美食图片识别)接口调用服务

Java JDK 1.7+

  • 项目结构介绍

cn.xsshome.taip
       ├── base                                //基类
       ├── http                                //Http通信相关类
       ├── error                                //SDK错误类
       ├── imageclassify
       │       └── TAipImageClassify           //TAipImageClassify类
       ├── sign                                //签名公用类
       ├── ocr
       │       └── TAipOcr                      //TAipOcr类
       ├── speech
       │       └── TAipSpeech                   //TAipSpeech类
       ├── face
       │       └── TAipFace                   //TAipFace类
       ├── ptu
       │       └── TAipPtu                   //TAipPtu类
       ├── nlp
       │       └── TAipNlp                   //TAipNlp类
       ├── vision
       │       └── TAipVision                   //TAipVision类
       └── util                                //工具类
  • 使用 maven 引入即可(最新版本4.2.2)

  • OCR 示例代码

TAipOcr 是调用腾讯 AI 中 OCR 的 Java 客户端,为调用腾讯 AI 中 OCR 功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipOcr,初始化完成后建议单例使用:

public class Sample {
    //设置APPID/APP_KEY
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";

    public static void main(String[] args) {
        // 初始化一个TAipOcr
       TAipOcr aipOcr = new TAipOcr(APP_ID,APP_KEY);
        // 调用接口
        String result = aipOcr.idcardOcr("./idcard.jpg", 0);//身份证正面(图片)识别
        String result = aipOcr.idcardOcr("./idcard2.jpg", 1);//身份证反面(国徽)识别
        String result = aipOcr.bcOcr("./juli2.jpg");//名片识别
        String result = aipOcr.driverlicenseOcr("./driver.jpg",0);//行驶证OCR识别
        String result = aipOcr.driverlicenseOcr("./driver2.jpg",1);//驾驶证OCR识别
        String result = aipOcr.bizlicenseOcr("./biz.jpg");//营业执照OCR识别
        String result = aipOcr.creditcardOcr("./bank2.jpg");//银行卡OCR识别
        String result = aipOcr.generalOcr("./biz.jpg");//通用OCR识别
    }
}
  • ASR、TTS 示例代码

新建TAipSpeech TAipSpeech是调用腾讯AI中语音识别、合成的Java客户端,为调用腾讯AI中语音识别、合成功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个TAipSpeech,初始化完成后建议单例使用:

public class Sample {
    //设置APPID/APP_KEY
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";

    public static void main(String[] args) {
        // 初始化一个TAipSpeech
        TAipSpeech aipSpeech = new TAipSpeech(APP_ID, APP_KEY);
        // 调用接口
        String filePath ="./VOICE1513237078.pcm";//本地文件路径
        byte[] audio = FileUtil.readFileByBytes(filePath);//获取文件的byte数据
        String result = aipSpeech.asrEcho(filePath, 1);//语音识别-echo版
        String result = aipSpeech.asrLab(1, 16000, 0, 1024, 1, audio);//语音识别-流式版(AI Lab)
        String result = aipSpeech.asrWx(filePath, 1, 16000, 16, 0, 1024, 1, 1);//语音识别-流式版(WeChat AI)
        String text = "小帅封装代码";
        String result = aipSpeech.TtaSynthesis(text);//语音合成(优图)     默认参数
        String result = aipSpeech.TtaSynthesis(text,2,1);//语音合成(优图)     全部参数
        String result = aipSpeech.TtsSynthesis(text, 1, 3);//语音合成(AI Lab) 默认参数
        String result = aipSpeech.TtsSynthesis(text,1,3,0,100,0,58);//语音合成(AI Lab) 全部参数
        String result = aipSpeech.asrLong("G:/16.pcm", 1, "http://yourwebsitename.com/methodname");//长语音识别
        System.out.println(result);
    }
}

 

  • 图像识别 示例代码

TAipImageClassify是调用腾讯AI中图像识别的Java客户端,为调用腾讯AI中图像识别功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipImageClassify,初始化完成后建议单例使用:

public class Sample {
    //设置APPID/APP_KEY
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";
    public static void main(String[] args) throws Exception {
        // 初始化一个TAipImageClassify
        TAipImageClassify aipImageClassify = new TAipImageClassify(APP_ID, APP_KEY);
        String filePath = "G:/x5.jpg";//本地文件路径
        byte[] image = FileUtil.readFileByBytes(filePath);//获取文件的byte数据
        String result = aipImageClassify.visionScener(image, 1, 5);//场景识别
        String result = aipImageClassify.visionObjectr(image, 1, 5);//物体识别
        String result = aipImageClassify.imageTag(image);//图像标签识别
        String result = aipImageClassify.visionImgidentify(image, 1);//车辆识别
        String result = aipImageClassify.visionImgidentify(image, 2);//花草识别
        String result = aipImageClassify.flowersAndPlant(image);//花草识别
        String result = aipImageClassify.vehicle(image);//车辆识别
        String result = aipImageClassify.visionImgtotext(image,RandomNonceStrUtil.getRandomString());//看图说话
        String result = aipImageClassify.imageFuzzy(image);//模糊图片检测    
        String result = aipImageClassify.imageFood(image);//美食图片识别    
        System.out.println(result);
        
    }
}
  • 人脸识别 示例代码

TAipFace是调用腾讯AI中人脸识别的Java客户端,为调用腾讯AI中人脸识别功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipFace,初始化完成后建议单例使用:

public class Sample{
 //设置APPID/APP_KEY
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";
    public static void main(String[] args) throws Exception {
         // 初始化一个TAipPtu
        TAipFace aipFace = new TAipFace(APP_ID, APP_KEY);
        String filePath = "G:/body2.jpg";
        String filePathA = "G:/dc.jpg";
        String filePathB = "G:/dcg.jpg";
        /**********人脸识别**********/
        String result = aipFace.detect(filePath);//人脸检测与分析
        String result = aipFace.detectMulti(filePath);    //多人脸检测
        String result = aipFace.faceCompare(filePathA, filePathB);    //人脸对比     
        String result = aipFace.detectCrossage(filePathA, filePathB);//跨年龄人脸识别
        String result = aipFace.faceShape(filePathA);//五官定位     
        String result = aipFace.faceIdentify(filePath, "group01", 9);//人脸识别
        String result = aipFace.faceVerify(filePath, "20180511");//人脸验证
        /**********个体管理**********/
        String result = aipFace.faceNewperson(filePath,"group20180511","201805110001","测试");//个体创建
        String result = aipFace.faceDelperson("201805110001");//删除个体
        /*增加人脸 图片二进制List*/
        List bytes = new ArrayList();
        byte [] faceA = FileUtil.readFileByBytes(filePathA);
        byte [] faceB = FileUtil.readFileByBytes(filePathB);
        bytes.add(faceA);
        bytes.add(faceB);
        String result = aipFace.faceAddfaceByte(bytes,"201805110001","测试增加人脸");
        /*增加人脸 图片本地路径List*/
        List filePaths = new ArrayList();
        filePaths.add(filePathA);
        filePaths.add(filePathB);
        String result = aipFace.faceAddfaceByFilePath(filePaths,"201805110001","测试增加人脸");//增加人脸
        String result = aipFace.faceDelFace("201805110001", "2573556034542000336");//删除人脸
        String result = aipFace.faceSetInfo("201805110001", "小帅测试","测试接口");//设置信息
        String result = aipFace.faceGetInfo("201805110001");//获取信息
        /**********信息查询**********/
        String result = aipFace.getGroupIds();//获取组列表
        String result = aipFace.getPersonIds("group20180511");//获取个体列表
        String result = aipFace.getFaceIds("201805110001");//获取人脸列表
        String result = aipFace.getFaceInfo("2573564663139686751");//获取人脸信息     
        System.out.println(result);
    }
}
  • 图片特效 示例代码

TAipPtu是调用腾讯AI中图片特效的Java客户端,为调用腾讯AI中图片特效功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipPtu,初始化完成后建议单例使用:

public class Sample{
     //设置APPID/APP_KEY
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";
    public static void main(String[] args) throws Exception {
        // 初始化一个TAipPtu
        TAipPtu aipPtu = new TAipPtu(APP_ID, APP_KEY);
        String imagePath = "G:/test2.jpg";
        String result = aipPtu.faceCosmetic(imagePath, 23);//人脸美妆     
        String result = aipPtu.faceDecoration(imagePath, 8);//人脸变妆     
        String result = aipPtu.imgFilter(imagePath, 20);//滤镜 天天P图     
        String result = aipPtu.visionImgfilter(imagePath, 32, String.valueOf(new Date().getTime()));//滤镜 AI Lab
        String result = aipPtu.faceMerge(imagePath, 12);//人脸融合
        String result = aipPtu.faceSticker(imagePath, 27);//大头贴
        String result = aipPtu.faceAge(imagePath);//颜龄检测
        System.out.println(result);
    }
}
  • 自然语言处理

TAipNlp是调用腾讯AI中自然语言处理的Java客户端,为调用腾讯AI中自然语言处理功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipNlp,初始化完成后建议单例使用:

public class Sample{
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";
    public static void main2(String[] args) throws Exception {
        TAipNlp aipNlp = new TAipNlp(APP_ID, APP_KEY);
        String session = new Date().getTime()/1000+"";
        String filePath = "G:/tt.jpg";
        String filePath2 = "G:/16.pcm";
        String result = aipNlp.nlpWordseg("小帅开发者");//分词
        String result = aipNlp.nlpWordpos("小帅是一个热心的开发者");//词性标注
        String result = aipNlp.nlpWordner("最近张学友在深圳开了一场演唱会");//专有名词
        String result = aipNlp.nlpWordsyn("今天的天气怎么样");//同义词
        String result = aipNlp.nlpWordcom("今天深圳的天气怎么样?明天呢");//意图成分
        String result = aipNlp.nlpTextpolar("小帅很帅");//情感分析
        String result = aipNlp.nlpTextchat(session,"北京天气");//基础闲聊     
        String result = aipNlp.nlpTextTrans(0, "小帅开发者");//文本翻译(AI Lab)
        String result = aipNlp.nlpTextTranslate("小帅开发者", "zh", "en");//文本翻译(翻译君)     
        String result = aipNlp.nlpImageTranslate(filePath, session, "doc","zh", "en");//图片翻译
        String result = aipNlp.nlpSpeechTranslate(6, 0, 1, session, filePath2,"zh", "en");//语音翻译     
        String result = aipNlp.nlpTextDetect("こんにちは", 0);//语种识别
        System.out.println(result);
    }
}
  • 智能鉴黄、暴恐图片识别

TAipVision是调用腾讯AI中智能鉴黄、暴恐图片识别的Java客户端,为调用腾讯AI中智能鉴黄、暴恐图片识别功能的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个 TAipVision,初始化完成后建议单例使用:

public class Sample{
    public static final String APP_ID = "你的 App ID";
    public static final String APP_KEY = "你的 Api Key";
    public static void main2(String[] args) throws Exception {
        TAipVision aipVision = new TAipVision(APP_ID, APP_KEY);
        String filePath = "G:/tt.jpg";
        String result = aipVision.imageTerrorism(filePath);//暴恐图片
        String result = aipVision.visionPorn(filePath);//智能鉴黄
        System.out.println(result);
    }
}

 

  • 代码地址:https://gitee.com/xshuai/taip TAIP 是调用腾讯 AI 接口的 Java 客户端,为调用腾讯 AI 功能的开发人员提供了一系列的交互方法。 Java调用腾讯AI接口服务。鉴权实现 Java快速开发第三方——腾讯人工智能AI接入详解SDK形式 文档请移步:http://taip.mydoc.io/ APPID APPKEY 是腾讯AI创建应用后得到。请移步腾

  • OCR Java SDK目录结构 cn.xsshome.taip ├── base //基类 ├── http //Http通信相关类 ├── imageclassify │ └── TAipImageClassify //TAipImageClassify类 ├── sign //签名公用类 ├── ocr │ └── TAipOcr //TAipOcr类 ├── speech │ └── TA

  • 上午和昨天一起在改在openfaas中部署一个springboot的项目,在springboot中的controller类,有可以接收前台传值的方法,我把它部署到openfaas中一直报错不是405就是500,我其实不是很清楚究竟是我代码的问题还是Openfaas和java一起使用需要注意什么,现在也没有解决,下午安docker,头一次用ubuntu,我那个vi编程窗口格式就不对,后来也没改太好,

 相关资料
  • 一面4.18 面试官人超好 #define const constexpr区别 virtual override 智能指针 std::unique_ptr实现 32位的int和32位的float,谁能表示的数据个数多? lambda 给了一段代码判断有什么问题 算法是对称二叉树 二面4.19 项目拷打 tcp tls http3.0 虚函数具体实现 class和struct区别 智能指针 virt

  • 腾讯二面客户端 Java 选手 二面跟一面差不多,八股少一些,主要是项目还有 AI 方面的询问,408 是必不可少的,没有考算法题。 1)自我介绍 2)项目亮点介绍 3)AI 学习 4)项目的目的 5)AI 准确度 6)设计模式和实践 7)TCP 为什么不能两次 8)HTTP 和 HTTPS 9)HTTPS 加密过程 10)对称加密和非对称加密算法和使用场景 11)死锁场景举例 12)死锁解决 1

  • t1 删除链表中值为k的数 ListNode* deleteNode(ListNode* head, int k) { auto t = new ListNode(0); auto tmp = t; t->next = head; auto pre = t; while(head!=nullptr)

  • 女面试官,没开摄像头。 上来问了几个c++的问题,智能指针、线程安全啥的,然后就开始问项目中遇到的困难怎么解决的,有没有遇到c++的性能问题,还某一些忘记了。 然后突然开始问对大模型的理解,有没有用过相关的软件,自己一般用gpt 来做些啥。然后就是反问了 总共就二十多分钟,感觉面的不大好

  • 为啥别人都是俩小时,我就半小时。 实习经历,缓存算法 一致性哈希 LRU 了解protobuf吗,protobuf和json的区别 protobuf的底层原理是怎么样的 写个代码吧,合并k个有序链表 看到算法题,我以为他要和我结束了,想多和面试官聊两句,我第一次写了一个每次需要遍历最小元素的方法。不过她好像没咋理解,我就画了个图说了一下。 他说有没有优化方法,然后我假装思考了一下,说了优先级队列的

  • 听说写面经能攒好运 腾讯客户端一面,加上写算法,总共2h10min,自我介绍,然后问项目。然后项目和八股穿插着问,以及场景题: 1:产品反应,用户在使用视频号的时候,刷视频的时候会出现卡顿(往下滑动看新视屏的时候),现在你应该怎么解决这个问题? 2:在直播的时候,也是卡顿,假设现在你已经排查出这个问题是发生在dns解析的时候,耗时过长,如何解决? 3:让你实现一个语音通话,用什么协议,用udp的话

  • 1、自我介绍 2、java堆、栈了解吗(下次面试可以扩展答一下jvm内存模型) 3、项目介绍(面试官问了好几个问题) 4、okhttp原理及优势 5、Handler原理(追问:用过sendMessageDelayed吗、怎么知道是哪个Handler处理) 4、java的几种引用和使用场景 5、线程池用过吗,讲一讲你对它的理解 6、用过锁吗,介绍项目用过,面试官反问不用synchronized也可以

  • 先自我介绍 先是一些经典问题: TCP和UDP区别 进程和线程 然后有一些应用: 一个切换的场景题问我有什么想法 怎么解决多线程的冲突问题 安卓怎么切换不同的线程 红黑树底层逻辑,以及怎么应用在查找里面 垃圾回收相关 hashmap 还有一些Java应用记不大清了 没有手撕