博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RPN 具体实现细节
阅读量:4209 次
发布时间:2019-05-26

本文共 764 字,大约阅读时间需要 2 分钟。

在这里假设我们想生成100:100、300:300、500:500及1:1、1:2、2:1三种尺寸三种比例的图像,这里要注意100:100的1:2尺寸不是100:200,而是100/√2:100*√2大约71:141,因为同一尺寸的三种比例变化后图像的面积要保存一致

假设以原点为矩阵中心点,生成的9个anchor如下(x1,y1,x2,y2)

在这里插入图片描述
然后再把这9个anchor进行x,y方向的平移,convmap_height,convmap_width为最后特征图的大小,把特征图中的每一点映射回原图作为anchor的中心点,一个中心点形成9个anchor。代码如下,

for i in range(self.convmap_height):            h = i * 16 + 8            for j in range(self.convmap_width):                w = j * 16 + 8                for k in range(self.anchor_size):                    index = i * self.convmap_width * self.anchor_size + j * self.anchor_size + k                    anchor = anchors[k, :]                    proposals[index, :] = anchor + np.array([w, h, w, h])

得到如下矩阵结果:

在这里插入图片描述
边界点形成的anchor会超出原图界限,所以会有第一行和最后一行负数和大整数的存在。

我们把最中间形成的anchors画出来如下图:

在这里插入图片描述

转自:

你可能感兴趣的文章
C++ 动态库&静态库创建和使用
查看>>
How to Create the CAPL DLL and integrated it into CANOE
查看>>
Jenkins-Build Monitor View
查看>>
Jenkins-Categorized Jobs View
查看>>
Jenkins-Join Plugin
查看>>
Jenkins-Throttle Concurrent Builds
查看>>
Jenkins-HTML5 Notifier Plugin
查看>>
Jenkins-Requeue Job
查看>>
Jenkins-自定义Plugin创建
查看>>
AUTOSAR DATABASE ARXML 与 VECTOR DATABASE FILE对比
查看>>
AUTOSAR CAN Network Management 介绍
查看>>
c/c++/boost字符串的学习
查看>>
c中const和c++中const的学习总结
查看>>
const char *,char * ,string,char []之间的关系和转换
查看>>
c的预处理器
查看>>
c预处理器中的语法详解
查看>>
纯c中char*[]的处理
查看>>
c/c++生成不重复的字符串(6个字符组成,可表示的个数可以扩充),简易版数据库主键
查看>>
c编程题目详解
查看>>
linux下c开发工具详解
查看>>