Window环境运行Tensorflow目标识别示例程序

2023-05-16

Tensorflow提供了目标识别的API来支持通过各种深度学习网络实现目标识别的功能。通过访问Github项目https://github.com/tensorflow/models 可以看到Tensorflow目前支持的各种神经网络的模型实现,包括Resnet,Fast R-CNN,SSD等。其中包含的一些子目录内容如下。

official - 官方模型目录,是使用TensorFlow的高级API的示例模型的集合,它们得到良好的维护,支持最新稳定API,经过了充分的测试,并进行过优化,是TensorFlow用户的首选。 

research - 研究模型目录,是研究人员在TensorFlow中实施的模型,它们没有得到官方支持,也不能保证在后续的TensorFlow发布版本中工作,带有一些研究性质。考虑到深度学习的快速发展,一些最新的研究成果不会出现在官方模型中,会在这里出现。

community - 文件夹包含一些精选的库和机器学习的模型,用于演示TensorFlow的功能,包括各种博客文章中提供的代码。

orbit - 一些灵活的轻量级的库,用户可以复制并在其基础上进行自己的学习功能的实现。

在official和research等目录中均包含了目标识别(object_dectection)的内容,目前的版本中,在research/object_dection/g3doc子目录下,tf1_detection_zoo.md和tf2_detection_zoo.md文件中,分别列出了各种神经网络用于目标识别的性能指标评估,如下

在research/object_dection/colab_tutorials子目录下,object_detection_tutorial.ipynb则给出了采用Tensorflow实现目标识别的示例。

在Windows下进行示例的实现(假定已经安装python环境),具体的实现方法选择一个目录作为工作目录,以运行后面的示例程序。在目录下执行

git clone https://github.com/tensorflow/models

复制models代码库至本地,之后可以在该目录创建object_detection_tutorial.ipynb来运行示例目标识别程序。程序设置和运行过程可能会遇到如下一些问题

1. pycocotools安装

安装命令 pip install pycocotools,需要提前安装Build Tools for Visual Studio 2017(2015版之后就可以,不需要安装整个Studio),不然会报错,可以通过搜索安装。

2. protobuf安装

从https://github.com/protocolbuffers/protobuf/releases下载指定的protobuf版本

个人选择Windows执行文件版本,解压到指定目录,包含protoc.exe文件,把执行文件的目录加到系统路径中,就可以在任意位置执行protoc命令

3. pip安装

按照示例程序执行

cd models/research                #进入models/research目录

pip install .

可能会出现类似 Cannot uninstall 'pywin32'. It is a distutils ... 这样的错误,表示无法卸载pywin32,解决的方法是找到指定的文件并且删除就可以。参考https://www.pianshen.com/article/46991684283/

找到指定的site-packages目录下的对应的包的文件pywn32-xxx.egg-info文件并删除,再执行pip install的指令就可以了。其它的包的问题也是同样的方法。

其中site-packages目录在参考链接中在python36\Lib下面,个人通过anaconda安装的python环境,位置在C:\ProgramData\Anaconda3\Lib\site-packages,可以根据python安装位置来确定。

完成环境设置后,运行示例程序,打开object_detection目录下的object_detection_tutorial.ipynb,运行到最后,显示两个示例图片的目标识别,分别是狗和海边放风筝。实现了图片中各种对象的识别。

并且用了两种模型进行对比,ssd_mobilenet_v1_coco_2017_11_17和mask_rcnn_inception_resnet_v2_atrous_coco_2018_01_28,结果显示mask_rcnn具有更好的识别效果,同时也需要更多计算时间。

参考链接:

https://toutiao.io/posts/m4hrm3/preview

https://github.com/tensorflow/models

https://www.cnblogs.com/mar-q/p/7459845.html

https://blog.csdn.net/nuohanfengyun/article/details/105988496​​​​​​

https://www.pianshen.com/article/46991684283/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Window环境运行Tensorflow目标识别示例程序 的相关文章

  • 《项目经验》--简单三层使用DataTable向数据库表批量导入数据---向SqlServer多张张表中导入数据

    前面已经介绍过如何向数据库的一张表中批量导入数据 xff0c 详情见博客 项目经验 简单三层使用DataTable向数据库表批量导入数据 向SqlServer一张表中导入数据 xff1b 本文主要介绍如何向SqlServer的多张表中批量导
  • 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中

    先看一下我要实现的功能界面 xff1a 这篇文章主要介绍 xff1a 后台一般处理程序把从数据库查找的数据 xff0c 转换成JSON xff0c 然后传递到前台JS文件中 xff0c JS解析JSON数据 xff0c 并将数据显示在界面
  • 英语快照1---英语正能量

    突发奇想 xff0c 想记录一下近来自己的英语感觉 xff0c 最近特别想学英语 xff0c 感觉学英语是一种享受 xff0c 说不出来的感觉 这两天发生了一些事 xff0c 描述一下 xff0c 也算是对现在英语感觉的一种快照吧 xff0
  • 由自身经历谈“不谋全局者,不足以谋一域”

    古人云 xff1a 不谋全局者 xff0c 不足以谋一域 xff1b 不谋万世者 xff0c 不足以谋一时 就是说领导者要胸有全局 xff0c 抓好大事 xff0c 善于解决全局性 战略性 方向性问题 xff0c 决不能眉毛胡子一把抓 xf
  • 软考之下午题做题技巧

    距离5月25日的软考还有2天时间 xff0c 考试前的状态尤为重要 上午题虽然很零散 xff0c 但是很简单 xff0c 下午题虽然就5道 xff0c 但是做题时需要认真 认真再认真 xff0c 答案题中找 xff0c 好好读题 xff0c
  • 看过J2EE视频,你是否也有雨过地皮湿的感觉

    软考过后开始了J2EE的学习 xff0c 初认识J2EE视频感觉不是很好 xff0c 有种雨过地皮湿的感觉 xff0c 还需要通过后续的学习来加强巩固 至今已接触的JAVA方向的J2SE 和J2EE xff0c 下面简单对JAVA方面的技术
  • springboot自动配置原理以及spring.factories文件的作用详解

    一 springboot 自动配置原理 先说说我们自己的应用程序中Bean加入容器的办法 xff1a bean加入容器 我们在应用程序的入口设置了 64 SpringBootApplication标签 xff0c 默认情况下他会扫描所有次级
  • 无人机传感器信号滤波器设计

    由于无人机在飞行过程中受到电机桨叶转动的引起的振动影响 xff0c 从陀螺仪 加速度计等传感器出来的数据需要进行滤波 xff0c 一般是通过低通滤波 xff0c 结合电机的频率特性 xff0c 通常30Hz左右是比较合适的阈值 Matlab
  • TCP网络数据包的组成部分,数据包分片与重组功能

    一个网络数据包包括哪些有了解吗 xff1f 网络数据包一般包括头部和数据部分 xff0c 在TCP协议中 xff0c 要发送的数据经过TCP模块添加TCP头部 xff1b 然后IP模块添加IP头部和MAC头部 xff1b 然后在最前面加上报
  • 无人飞行器数学模型

    这里是运动学和动力学模型 xff0c 也适用于任何其它类型的飞行器 xff0c 乃至无人车等各种载体 飞行器的状态包括位置 xff0c 速度 xff0c 姿态角度 xff0c 角速度 xff0c 姿态也可以用坐标转换矩阵来表示 xff0c
  • 无人飞行器的控制

    飞行器的控制通过几个环来实现 xff0c 外环控制为位置的控制 xff0c 内环控制为姿态的控制 xff0c 通过姿态的控制来实现飞行器的动态控制 xff0c 从而控制飞行器的速度和位置 xff0c 大致框架如下 位置控制根据目标位置得出飞
  • Linux Shell脚本检查一个目录是否存在,不存在则创建的方法

    在Linux下 xff0c 检查一个目录是否存在 xff0c 不存在则创建的方法如下 xff0c 通过shell文件 if d dirname then mkdir dirname fi 这里判断名称dirname的目录是否存在 xff0c
  • 在Linux下打开一个新的终端运行程序的脚本

    在ROS程序中经常涉及到需要打开多个终端运行程序的情况 xff0c 通常ROS程序会包含多个节点 xff0c 而每个节点都需要在一个终端中运行 xff0c 在脚本中打开新的终端并在其中运行程序的方法如下 gnome terminal x b
  • ROS目录结构

    参考 xff1a https zhuanlan zhihu com p 139405796 ROS项目通常组织在一个catkin的workspace下面 xff0c 里面包含典型的文件和目录 xff0c 如下 如上图所示 xff0c 首先是
  • Linux下获得某个目录下最新生成的文件的方法

    在程序中需要对最新生成的文件进行处理 可以采用如下的脚本 filename 61 96 ls t dir head n1 awk 39 print 0 39 96 echo filename 返回的filename即为dir目录下最新生成的
  • Ubuntu安装OpenCV

    最近又需要安装OpenCV了 xff0c 真是躲不掉啊 xff0c 也说明了OpenCV的全面 xff0c 图像 视频处理都需要用到它 参考了https blog csdn net public669 article details 990
  • Ubuntu 18.04安装RealTek 8723DE网卡驱动

    台式机是RealTek 8723DE的无线网卡 xff0c 在Ubuntu 18 04下不能自动识别 xff0c 在电脑官网没有Linux的驱动 xff0c 在网上找了安装方法 xff0c 有些不能有效工作 xff0c 找到一个从GitHu
  • Ubuntu绕不开之ROS

    除了前面的OpenCV xff0c ROS也是Ubunt绕不开的软件 Ubuntu 18 04对应的ROS是melodic版本 xff0c 安装推荐参考官方教程 xff1a http wiki ros org melodic Install
  • Ubuntu 18.04之安装中文输入法

    Ubuntu 18 04在安装时可以选择中文界面安装 xff0c 这样会默认安装中文输入法 xff0c 不过这样生成的系统目录名称等都变成中文 xff0c 对于有些技术人员不是很习惯 xff0c 更喜欢安装英文的Ubuntu xff0c 然
  • MySQL视图Duplicate column name问题的解决

    本文将介绍MySQL view视图出现 Duplicate column name 问题的解决解决方法 xff0c 在这里 xff0c 我用的是SQLyog程序 xff0c 其实和在MySQL命令行打代码是一样的 xff0c 只不过用SQL

随机推荐

  • Linux下逐页翻看文件内容的方法

    Linux下用cat查看文件的话会全部打印出文件的所有内容 xff0c 用gedit查看的话可能会死机 xff08 当文件大于5M的时候 xff09 xff0c 用more命令可以逐页翻看需要查看的文件内容 xff0c 命令格式 more
  • Linux下搜索包含指定文字内容文件的方法(grep)

    用grep命令可以方便地在Linux系统下搜索包含指定文字内容的文件 grep r lt text to find gt lt dir gt 搜索指定目录 lt dir gt 下 xff0c 所有包含 lt text to find gt
  • Ubuntu设置登录自动启动程序的方法

    参考链接 xff1a https www cnblogs com the wang p 11230087 html 如上 xff0c 设置自动启动程序的方法有多种 xff0c 分别在系统启动的不同阶段启动 xff0c 在这里需要在用户登录图
  • Linux下脚本自动输入sudo密码的方法

    在设置自启动程序时 xff0c 希望可以自动输入sudo密码以运行一些需要超级用户权限的程序 xff0c 可以如下例子 echo 123456 sudo S apt get update 其中123456为sudo密码 xff0c sudo
  • Linux Shell脚本参数传递与条件判断的方法

    参考链接 xff1a https www runoob com linux linux shell html 参数传递 Shell脚本中参数用 来表示 xff0c 如 1 第一个参数 2 第二个参数 xff0c 以此类推 xff0c 比如t
  • Linux下C检测按键按下并即时反馈的方法(不需要回车)

    在Linux下检查按键按下并即时反馈的方法 xff0c 如下 include lt stdio h gt include lt termio h gt int main termios tms old tms new tcgetattr 0
  • Linux下C语言检测多个按键按下状态的方法

    在需要同时监听多个按键按下状态的情况下 xff0c 可以通过监听 dev input event事件的方法来判断按键的状态 比如对于通过键盘控制小车时 xff0c 有可能多个方向键同时按下 xff0c 需要同时监测到 xff0c 通过前面文
  • Ubuntu ROS常用包安装

    参考链接 xff1a https www it610 com article 1290751077485977600 htm 在Ubuntu下进行ROS相关研究 xff08 比如SLAM等 xff09 xff0c 有一些常用的包需要安装 x
  • Linux下用户退出仍运行程序的方法

    在设置服务器上的应用程序时 xff0c 需要退出用户登录时仍然运行提供服务 xff0c 通过如下的命令 nohup cmd amp nohup表示不挂断程序运行 xff0c amp 表示后台运行 xff0c cmd表示需要运行的指令 xff
  • Linux下开启/关闭无线网络的方法

    参考链接 xff1a https www cnblogs com ztguang p 12648367 html 通过iwconfig命令查询和开启 关闭无线网络 iwconfig 列出启用的无线网络 sudo iwconfig lt 网络
  • 【Uni-App】出现Cannot read property ’apply’ of undefined错误

    错误日志如下 xff1a span class token number 14 span span class token punctuation span span class token number 47 span span clas
  • 通过SSH协议在本地和服务器之间传输文件和目录的方法

    参考链接 xff1a https blog csdn net w8827130 article details 90574699 通过SSH协议在本地和服务器之间传输文件 目录 xff0c 从一个地址拷贝至另一个地址 xff0c 如下 sc
  • Ubuntu强制修改用户口令的方法

    在忘记用户密码或者想要强制修改密码的时候 xff0c 可以采用启动至recovery mode的方式进行修改 在Ubuntu启动选项中 xff0c 选择Ubuntu advanced option xff0c 之后选择recovery mo
  • mqtt服务搭建及通过python进行消息交互

    参考链接 xff1a https www runoob com w3cnote mqtt intro html 对于需要与远程服务器进行数据交互的应用场景 xff0c mqtt是一种非常简便实用的数据交互机制 xff0c 通过消息的发布 订
  • RTMP服务器搭建

    参考链接 xff1a https www cnblogs com lidabo p 6404513 html 在Ubuntu 18 04上搭建一个RTMP服务器实现视频流的转播 xff0c 可以用以实现远程的监控 xff0c 通过nginx
  • CentOS下后台运行程序的方法

    参考链接 xff1a https www cnblogs com loveLands articles 10809333 html 方法一 xff1a amp 在运行命令后面加上 amp xff0c 程序就会放到后台执行 xff0c 不会占
  • 人工智能知名数据集

    网上有很多可以用于深度学习算法验证的数据集 xff0c 这里仅列出个人进行人工智能学习和研究工作涉及到的常用数据集 xff0c 比较适合初学者和刚开始从事人工智能方向研究的工作者 1 MNIST MNIST 数据集来自美国国家标准与技术研究
  • 几种查找人工智能数据集的方法

    数据集是人工智能算法训练和测试的基础 xff0c 不同专业的人工智能算法研究需要用到不同专业的数据集 xff0c 如下为网上推荐的几种寻找数据集的方法 1 Kaggle数据集 数据集地址 xff1a https www kaggle com
  • Jetson Nano开发套件安装

    参考链接 xff1a https developer nvidia com embedded learn get started jetson nano devkit intro 新到一个Jetson Nano的开发板 xff0c 用以测试
  • Window环境运行Tensorflow目标识别示例程序

    Tensorflow提供了目标识别的API来支持通过各种深度学习网络实现目标识别的功能 通过访问Github项目https github com tensorflow models 可以看到Tensorflow目前支持的各种神经网络的模型实