目录
下一步
在这里,我们完成了基于TensorFlow Lite的应用程序的构建,该应用程序使用来自ONNX Model Zoo的网络模型执行对象识别。
输出存储在一组数字数组中。除非我们做更多的工作来解释其中的值,否则数值数组本身不会告诉我们有关检查图像的太多信息。数组的保持值之一如下所示:
float[][][][][] buf2 = new float[1][13][13][3][85];
让我们解包这个数组。数组的第一个维度是1,用于选择要检查的一组图像中的哪个图像。对于我们的实现,任何时候都只检查一张图像。数组的下两个维[13] [13]用于选择网格的行和列。每行和每一列都包含有关图像的32x32像素部分的信息。图像部分包含3个针对发现的对象的边界框定义。最后一个维度用于包含有关找到的对象的有趣数据的数组。
此维度的前四个元素包含找到的元素的边界矩形:X,Y,WIDTH,HEIGHT。第五个元素包含0到1之间的置信度。如果置信度小于某个阈值,那么我们得出的结论是,没有指向任何关注的内容,并且可以跳过此行中其余数据的评估。剩余80项数据。这80个数据项代表模型可以识别的80类对象。类是对象类型。类的示例包括“猫”,“狗”,“远程”,“电视”,“人”等。对于每个类别,该类别中的对象都有一个置信度值。
此数据上需要进行一些处理。这些值的格式不符合我们的期望。需要一些缩放和调整,以使数字与我们的图像对齐。当我们有一个可以接受的置信度的项目时,它将被添加到发现的项目列表中,以便可以在屏幕上呈现标记发现的项目的框。
float[][][][][] result = buf2;
for(int y=0;y
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?
立即登录/注册


微信扫码登录