主要研究图像中的几何区域的表示
图像上常用几何区域表示是用来做感兴趣区域的,设置感兴趣区域或者屏蔽区域的作用有很多,如加快图像处理的速度,避开不想要的处理位置以避免干扰等等。本文简单讨论了图像上常用的几何形状和其在图像上的表示绘制方法。
一般几何形状包括了矩形,旋转矩形,圆,椭圆,圆环,多边形,任意形状。
绘制方法:扫描线绘制,扫描线绘制可以参考论文 link,我们通过存储扫描线的位置与形状交点,就可以很容易的获得所需要的形状位置,这是目前检索到处理形状绘制最高效的方法。
所以我们需要存储的结构可以用 vector<row,cols,cole>表示出来,这样,再得到我们想要的vector之后我们就通过遍历此vector得到我们需要绘制的位置。
矩形
矩形是一个很常用的形状,通过扫描线算法获得其信息也是相当简单的,有一点值得注意的是,扫描线可以从上->下扫描,也可以左<->右扫描,我们不采取其他的扫描方式是因为横向和纵向扫描方式更适用图像扫描的情况。
假设我们的矩形宽高是100×100,这样的情况下横纵扫描的复杂度是一致的,假设矩形的宽高是1000×100,显然横向扫描要优于纵向扫描。
对于矩形而言,橙色扫描线与绿色边的交点就是我们需要存储在vector里面的信息。
旋转矩形
旋转矩形就是对矩形做了一个旋转操作,旋转矩形的形状获取方法主要使用的是直线交点。
圆
圆的获取利用圆方程,极坐标和直角坐标均可。
椭圆
和圆类似,椭圆要利用任意角度的椭圆方程:椭圆的变换方程
圆环
圆环需要利用圆环的四个形状方程,两个圆弧,两段线段,可以考虑使用极坐标来简化计算。
多边形
多边形是个比较难以处理的情形,主要多边形有凹凸之分,还有是否自相交的区别,多边形内外判断可以参考下计算机图形学里一些关于进出的判断,对于更复杂的多边形如何判断内外是一个很值得研究的事情。。。