1704|2

402

帖子

9

TA的资源

纯净的硅(初级)

楼主
 

求助:嘉楠K510套件文字显示异常的猜测和解决进度 [复制链接]

 

在之前的AI脚本尝试中,发现文字显示异常,以face_expression脚本为例,根据视频演示,应当是如下的效果

 

但我根据源码编译出来的效果

 

可以看到,本来应该对表情进行说明文字变成了一些离散的点。

咨询过嘉楠的技术支持,表示原因可能有两个:

1)和训练模型精度有关系

2)异常的文字是中文,默认显示是英文,对长度也有要求

读取源代码,可以看到显示文字是调用了putText函数。在可信状态(score_max >= thresh)下,显示文字内容为text

cv::putText(img_argb, text, cv::Point(x0, y0), cv::FONT_HERSHEY_COMPLEX, 2, cv::Scalar(255, 0, 0, 255), 2, 8, 0);

其中text由模型给出

std::string text = fexpre.labels[score_index] + ":" + std::to_string(round(score_max * 100) / 100.0).substr(0,4);

但是,从

face_expression fexpre(fe_net_len, fe_num, thresh);

fexpre.load_model(fe_kmodel_path);  // load kmodel

fexpre.prepare_memory();  // memory allocation

可以看到fexpre为face_expression,进一步查找face_expression.h文件

    std::vector<std::string> labels

    {

        "Neutral", "Happy", "Sad", "Surprise", "Fear", "Disgust", "Anger", "Contempt"

    };

实在找不到中文或者过长文字了。

 

从文字的效果来看,似乎是把一个长方形的文字显示块,强行拉成了一个平行四边形。但并没有找到如何修改。

下一步准备分两条路继续尝试:

1、修改屏幕显示,尝试重新编译一下,看看不管是否识别,强制在屏幕显示某个文字,比如labels[1]。

2、把识别出来的表情,通过串口打印出来,看看是否能够正常识别。

最新回复

可以直接 调用 cv::putText(img_argb, text, cv::Point(), cv::FONT_HERSHEY_COMPLEX, 2, cv::Scalar();  这两个函数在屏幕上打印字符看看    详情 回复 发表于 2022-10-19 16:48
点赞 关注
 
 

回复
举报

6561

帖子

9

TA的资源

版主

沙发
 

要注意字符的取码方向和显示的方向的一致性

个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

可以直接 调用
cv::putText(img_argb, text, cv::Point(),
cv::FONT_HERSHEY_COMPLEX, 2, cv::Scalar(); 

这两个函数在屏幕上打印字符看看 

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表