当前位置: 首页 > news >正文

国家电力安全网站两学一做卖灯杆的做网站好

国家电力安全网站两学一做,卖灯杆的做网站好,高端家具东莞网站建设技术支持,定制型网站建设价格之前的学习中#xff0c;曾经在香橙派上使用阿里云平台的服务实现过类型识别#xff1a; 使用香橙派并基于Linux实现最终版智能垃圾桶项目 --- 下_香橙派 项目-CSDN博客 现在#xff0c;尝试在树莓派上通过阿里云平台的服务实现人脸识别#xff01; 通过VScode远程连接树莓… 之前的学习中曾经在香橙派上使用阿里云平台的服务实现过类型识别 使用香橙派并基于Linux实现最终版智能垃圾桶项目 --- 下_香橙派 项目-CSDN博客 现在尝试在树莓派上通过阿里云平台的服务实现人脸识别 通过VScode远程连接树莓派 当然使用SourceInsight来编写代码也可以全看个人喜好。 我的个人理解是 VScode 更适合远程编写和调试SourceInsight 更适合本地编写多文件的项目 对于本节想要实现的人脸识别并不特别需要很多文件且经常需要调试如果使用SourceInsight就要经常涉及将文件传给树莓派这个操作较为繁琐。 关于如何连接可以参考之前连接香橙派的博文步骤几乎一模一样唯一需要注意的是在.config文件中树莓派的用户名是“pi”而不是“rasberrypi” 小插曲 -- 使用Visual Studio Code远程连接香橙派_visual code 连接 inspect-CSDN博客 VSCODE小操作回顾补充 “ALT SHIFT多行缩进“CTRL S”保存“CTRL F”变量名查找 / 替换 连接成功后的样子 树莓派Python版本检查 python版本不够的升级方法 使用香橙派 在Linux环境中安装并学习Python_如何在香橙派上运行python文件-CSDN博客 在之前就提到过想要使用阿里云的人工智能模型python版本最好是3开头的所以在树莓派中同样运行以下指令检查python版本 python --version 可见python版本已经是3.11了那就不需要改动了 并且由于这是自带的python所以其库就在“/usr/bin” 下 ls /usr/bin 配置环境变量 在后面的代码中涉及到C语言调用python所以需要调用Python.h因此需要配置环境变量否则这个库找不到 vi ~/.bashrc #将以下内容加到最后保存退出 export C_INCLUDE_PATH/usr/include/python3.11 注意配置后要重启树莓派后才能生效  阿里云的人脸识别方案 阿里云官网阿里云|达摩院视觉智能开放平台 如果之前没有进行过注册则需要通过支付宝注册并获取AccessKey ID和Secret 我之前就创建过账号现在再获取一组 ID Secret (如果之前有用之前的应该也可以)阿里云登录 - 欢迎登录阿里云安全稳定的云计算服务平台 AccessKey ID 和 密码 一定要自己保存好 在树莓派上下载相应的SDK 关于人脸人体的SDK的查找 如何获取、安装、使用视觉智能开放平台PythonSDK及代码示例_视觉智能开放平台(VIAPI)-阿里云帮助中心 pip install alibabacloud_facebody20191230 此处发生了报错 解决办法 sudo mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.bak 安装完成后根据自己实际的ACCESS_KEY_ID 和 ACCESS_KEY_SECRET将以下内容写入到家目录下的.bashrc中 vi ~/.bashrc #然后在末尾输入以下内容 export ALIBABA_CLOUD_ACCESS_KEY_IDXXX #根据自己实际的ID填写 export ALIBABA_CLOUD_ACCESS_KEY_SECRETXXXX #根据自己实际的SECRET填写 保存退出后重启树莓派再输入“export”验证 可见ACCESSKEY已经成功被配置成为环境变量 在官网的人脸识别中找到一个感兴趣的模型我此处找了“人脸比对11 ”能力展示-阿里云视觉智能开放平台 点击“立即开通”开通服务点击“立刻购买”购买服务此处似乎有优惠免费使用1年 此时就可以使用这个模型了 下载示例代码进行测试 不能直接在人脸比对1:1下使用那个python代码例程而是要在以下链接中找到“文件在本地或文件不在同一地域OSS”的例程 人脸比对1:1示例代码_视觉智能开放平台(VIAPI)-阿里云帮助中心 在树莓派”mjm_code“下创建一个“face_detect_test”文件夹将示例代码拷贝进来并稍作修改 test.py # -*- coding: utf-8 -*- # 引入依赖包 # 最低SDK版本要求facebody20191230的SDK版本需大于等于4.0.8 # 可以在此仓库地址中引用最新版本SDKhttps://pypi.org/project/alibabacloud-facebody20191230/ # pip install alibabacloud_facebody20191230import os import io from urllib.request import urlopen from alibabacloud_facebody20191230.client import Client from alibabacloud_facebody20191230.models import CompareFaceAdvanceRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptionsdef face_detect(): #定义成一个函数方便调用config Config(# 创建AccessKey ID和AccessKey Secret请参考https://help.aliyun.com/document_detail/175144.html。# 如果您用的是RAM用户的AccessKey还需要为RAM用户授予权限AliyunVIAPIFullAccess请参考https://help.aliyun.com/document_detail/145025.html。# 从环境变量读取配置的AccessKey ID和AccessKey Secret。运行代码示例前必须先配置环境变量。access_key_idos.environ.get(ALIBABA_CLOUD_ACCESS_KEY_ID),access_key_secretos.environ.get(ALIBABA_CLOUD_ACCESS_KEY_SECRET),# 访问的域名endpointfacebody.cn-shanghai.aliyuncs.com,# 访问的域名对应的regionregion_idcn-shanghai)runtime_option RuntimeOptions()compare_face_request CompareFaceAdvanceRequest()#场景一文件在本地streamA open(r/home/pi/mjm_code/face_detect_test/mjm.png, rb) #预存的照片compare_face_request.image_urlaobject streamAstreamB open(r/home/pi/mjm_code/face_detect_test/face.png, rb) #待测试的照片compare_face_request.image_urlbobject streamBtry:# 初始化Clientclient Client(config)response client.compare_face_advance(compare_face_request, runtime_option)# 获取整体结果print(response.body)except Exception as error:# 获取整体报错信息print(error)# 获取单个字段print(error.code)# tips: 可通过error.__dict__查看属性名称# 关闭流streamA.close()streamB.close()if __name__ __main__: #写一个main调用face_detect函数来测试face_detect() 我使用了我自己的照片作为标准并使用了两张照片进行测试第一张是我本人的另一张照片第二张是我同学的照片 分别存在树莓派本地 /home/pi/mjm_code/face_detect_test/mjm.png //预存的照片 /home/pi/mjm_code/face_detect_test/face.png //待测试的照片 可见当我使用本人照片时置信度约为77%而当我使用同学照片时置信度直接变为0%我同学和我长的也太不一样了哈哈哈所以综合来说测试成功 置信度的提取和转化 但是返回的结果是一个结构非常的数据体所以尝试将置信度单独返回并只保留整数部分 提取的代码如下 # 单独提取置信度 confidence response.body.to_map()[Data][Confidence] #to_map()函数很重要不要忘记 score int(confidence) print(score) return score 现在就可以返回置信度的整数部分了 而之后就可以根据这个整数score来进行判断了 编写C语言调用python的人脸识别 在刚刚的测试中写出了调用阿里云人脸识别服务的pyhton程序那么现在尝试写C语言程序来调用python程序从而实现人脸识别 ①将刚刚的test.py中的main函数部分删除并重命名为face.py 刚刚加入main函数是为了直接调用封装好的face_detect函数而现在要使用C语言来调用它自然就不需要main函数了 ②编写调用face_detect函数的C函数 回顾“C语言调用Python的步骤” 详见之前的博文 使用香橙派并基于Linux实现最终版智能垃圾桶项目 --- 下_香橙派 项目-CSDN博客 face_cmp.c  #include stdio.h #include stddef.h #include stdlib.h #include string.h #include Python.h#include face_cmp.hvoid face_init(void) {Py_Initialize();PyObject *sys PyImport_ImportModule(sys);PyObject *path PyObject_GetAttrString(sys, path);PyList_Append(path, PyUnicode_FromString(.)); }void face_final(void) {Py_Finalize(); }int face_score(void) //python下face_detect函数返回的是已经经过提取和取证过的置信度score是个int型 {PyObject *pModule PyImport_ImportModule(face); //加载python文件if (!pModule){PyErr_Print();printf(Error: failed to load module\n);goto FAILED_MODULE; //goto的意思就是如果运行到这里就直接跳转到FAILED_MODULE}PyObject *pFunc PyObject_GetAttrString(pModule, face_detect); //加载python文件中的对应函数if (!pFunc){PyErr_Print();printf(Error: failed to load function\n);goto FAILED_FUNC;}PyObject *pValue PyObject_CallObject(pFunc, NULL);if (!pValue){PyErr_Print();printf(Error: function call failed\n);goto FAILED_VALUE;}int result 0;if (!PyArg_Parse(pValue, i, result)) //ace_detect函数返回的是已经经过提取和取证过的置信度score是个int型用‘i’表示{PyErr_Print();printf(Error: parse failed);goto FAILED_RESULT;}/* 如果函数返回的是字符串上面的PyArg_Parse则需要用‘s’来表示且下面注释的代码非常重要因为字符串名代表了其首地址所以不能直接复制而是需要使用strncpy函数category (char *)malloc(sizeof(char) * (strlen(result) 1) ); //开辟一个新的字符串常量。1是为了留出空间给\0memset(category, 0, (strlen(result) 1)); //初始化字符串strncpy(category, result, (strlen(result) 1)); //将result的结果复制给新的字符串*/FAILED_RESULT:Py_DECREF(pValue); FAILED_VALUE:Py_DECREF(pFunc); FAILED_FUNC:Py_DECREF(pModule); FAILED_MODULE:return result; } face_cmp.h #ifndef __face__H #define __face__Hvoid face_init(void); void face_final(void); int face_score(void);#endif face_cmp的作用就是封装C语言下的人脸识别函数C语言下的人脸识别函数的实现通过调用python代码下的face_detect函数 ③编写C程序调用刚刚的C函数实现人脸识别 face_test.c: #include stdio.h #include stdlib.h #include face_cmp.hint main() {int score 0;face_init();score face_score();printf(score%d\n, score);face_final();return 0; } ④编译并试运行  运行以下代码编译 gcc face_test.c face_cmp.c -I /usr/include/python3.11/ -l python3.11 可见调用成功
http://www.pierceye.com/news/612688/

相关文章:

  • 西南城乡建设部网站首页python3做网站教程
  • 网站首页设计欣赏个人电影网站建设
  • 导航网站建设怎么给网站图片加alt
  • 备案成功后怎么建设网站宠物喂养网页设计模板以及代码
  • 东莞哪家网站建设比较好wordpress更改语言设置
  • 如何找做网站的客户wordpress适合视频网站吗
  • 网站建设的业务流程图拔萝卜视频播放在线观看免费
  • 建个网站要多少钱高安网站制作
  • dw设计模板百度ocpc如何优化
  • 苏宁网站优化与推广html教程网站
  • 怎么做网站网页免费高清屏幕录像
  • 网络推广哪个网站好亚马逊网站开发使用的什么方式
  • 佛山企业网站建设咨询怎么从零开始做网站
  • dede移动端网站源码中国能建设计公司网站
  • 潍坊网站建设多少钱做网站seo优化
  • 南昌网站建设方案外包怎么自己做网站凑钱
  • 贵州企业展示型网站建设网站建设需要摊销吗
  • 网站建设视频教程广州哪里有正规的技能培训
  • 网站后台iis配置小程序模板消息推送规则
  • 桥梁建设工程网站残疾人网站服务平台
  • 网站开发语言包括哪些潍坊公司注册
  • 平顶山网站制作哪家公司好阿里巴巴网站建设改图片
  • 网站设计培训学校有哪些wordpress主题什么值得买
  • 如皋建设工程局网站静态网站做淘宝客
  • 温州网站建设案例做网站卖衣服物流包年多少钱
  • 响应 网站建设招聘室内设计
  • 网站建设宣传册内容南京个人网站建设
  • 毕业设计可以做哪些网站遵义原创网站
  • 国外服装设计网站app网站建设需要什么
  • 网站建设a云世家宋南南网站建设合集