日期:2014-05-19  浏览次数:20872 次

有关平面曲线关键点检测???帮忙
问题比较长 谢谢大家耐心看完 是关于平面曲线关键点检测的问题
我想用C#   或者C++写程序来实现
希望大家帮帮忙 我不知道如何下手 如何写 有程序最好 谢谢拉

为简化问题,假设用于关键点检测的二值图像已经细化.
关键点检测就是自上而下、从左向右对骨架图像进行扫描的
过程,其结果将是由一系列关键点构成的折线段的集合.
定义

Do   和Dc   分别为起始方向和当前方向,其中Do   是判断的起点
及其邻域决定的直线方向,   而Dc   指直线在当前点相对于前
一象素的方向.   假设黑象素为目标点,且P   和P0   分别为当前
目标点及当前折线起点,并设Q0   与Q1   为P0   的邻点(最多有
两点)   .   下面给出具体的判断算法:
(1)   在当前图像中搜索黑象素点P0   .   若无,算法结束.   否
则,转(2)   ;
(2)   若P0   的3   3   3   邻域无点,删除P0   ,   转(1)   .   否则,   记录
P0   为折线中关键点,取其邻域点Q   ,令Dc   和Do   均为方向,   P
=   Q   ,并对DPL   初始化(除Do   方向为1   外,   其余均为0)   ,   转
(3)   ;
(3)   从P   点连续跟踪该线,   不断调整Dc   及其DPL   值.   当
且仅当下面条件之一满足时,转(4)   :
 (   a)   P   的邻域已经无点;
 (   b)   相互垂直的方向上DPL   值大于等于1   (定理1、2)   ;
 (   c)   相互成45°方向上DPL   值大于2   (定理3、4)
(4)   记录P   为折线中关键点.   若P   的邻域有点Q   ,令P   =
Q   ,并对DPL   初始化,转(3)   ;否则,转(5)   ;
(5)   若P0   的3   3   3   邻域无点,转(1)   ;否则取P0   的邻点Q   ,
令Dc   和Do   均为P0   Q   方向,   P   =   Q   ,转(3)

------解决方案--------------------
什么样的曲线?

如果是正弦函数曲线等,那么就是检测斜率。