HELP 矩形拟合

Tinary3v0 2009-08-11 06:06:50
条件:PointF PT[100];或者CPoint [100]; 不是图像处理里面的那种较为规则的举行 这些点是由鼠标输入的 形状上已经判定为矩形
要求:通过这些点得到最佳的规则矩形,好像是用拟合算法 但是矩形怎么拟合啊 方程可是分段的啊!
请大家提些思路 谢谢 有成熟的算法最好 呵呵
...全文
106 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
LPR_Pro 2009-08-12
  • 打赏
  • 举报
回复
方法提示,代码自己去写吧.
第一步:找到所有点中距离最长的两点,并求出两点的连线;
第二步:然后判断其余的点,如果其余的点在同一边(左边或右边,上部或下部),则第一步获得的直线是矩形的一边;这种情况见第三步;如果其余的点分布在直线的两边,这种情况见第五步处理;
第三步:求其余的点到第一步获得的直线的垂直距离,获得最大距离的点,然后通过该点与第一步求得的直线平行的直线为另一边. 转第五步
第四步:分别求第一步直线两边的点带该直线的垂直距离最大的两点,然后通过两点画与该直线平行的两条直线,
第五步:最后画通过第一步获得的两点,并与第一步直线垂直的两条平行线,与上面两条线相交则组合为一矩形.
huofen2005 2009-08-11
  • 打赏
  • 举报
回复
方法二:
画竖线的时候,在水平方向上投影。
点最密集的位置上画竖线。
画横线的时候思路同上。
huofen2005 2009-08-11
  • 打赏
  • 举报
回复
左右逼近时,先从最左点和最右点开始,向中间挪。
线两边一定范围内的的点到线的距离方差最小时候画竖线。
huofen2005 2009-08-11
  • 打赏
  • 举报
回复
上下逼近,取方差最小的
左右逼近,取方差最小的
bafghgle 2009-08-11
  • 打赏
  • 举报
回复
也来顶一下你。。
dronly 2009-08-11
  • 打赏
  • 举报
回复
只能帮顶了

19,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧