我目前正在开发一个计算机视觉程序,该程序需要我确定图像中颜色斑点的“方向”。颜色斑点通常遵循椭圆形状,因此可用于随时间跟踪方向(相对于最初定义/确定的方向)。
我认为计算方向变化的方法描述如下:
- 将可能的方向(360 度)量化为 N 个方向(可能为 8 个,以 45 度角为增量)。
- 给定一个表示颜色 blob 的初始状态 (t0) 的存储矩阵,还获取一个表示 blob 当前状态 (tn) 的矩阵。
- 遍历这 N 个方向并搜索该给定方向的颜色值的最长延伸。(例如,如果椭圆旋转 45 度,0 为垂直,则最长的长度应归因于 45 度标记/或 225 度)。
这个概念本身并不复杂,但我遇到了以下问题:
- 计算图像中任意角度的值的最长拉伸。这对于 0、45、90 等角度很简单,但对于中间角度则更困难。“量化”角度对我来说并不像听起来那么容易。
请不要担心区分角度(例如 0 和 90)的潜在问题。惯性可用于确定颜色斑点的最可能方向(换句话说,基于过去的方向状态)。
我主要关心的是确定矩阵中的“最长延伸”。
谢谢您的帮助!