找了不少亚象素边缘检测的资料, 基本都是数学理论: 矩保持, 一阶微分期望值, 切线信息法...
但实际程序实现中, 面对图像数据, 该如何实现呢, 也就是如何把那一行行公式, 转换成实际操作的代码. 在边缘检测的理论中, 有一阶导数, 二阶导数算法, 公式也是一大堆, 但在实际程序实现中, 都是通过象素数据的卷积运算来实现的, 我象亚象素边缘检测也应该有特定的程序实现方法吧, 有熟悉这方面技术的请帮忙解答下, 现在实在是摸不着头脑.比如一阶微分期望值法:1) 对图像函数f(x), 求它的一阶微分g(x)
2) 根据g(x)的值确定边缘区间, 即确定一个阈值T
3) 计算g(x)的概率函数p(x)
4) 计算p(x)的期望值 E, 并将边缘定在E处1, 2点还好理解些, 几本就是一阶微分边缘检测方法, 程序通过卷积运算实现
但3), 4)就比较迷惑了, 怎么个求概率函数, 又怎么求期望值, 而这个期望值就成了亚象素边缘位置??

解决方案 »

  1.   

    概率函数我估计是图像灰度值的, 但资料都语焉不详, 所以弄得我一头雾水
    任何数学公式, 要转换为实际程序代码, 无非两种: 1是将数据直接代入公式计算, 2是通过某种方式进行近似计算我也想直接代公式, 问题是那一堆数据在图像上怎么体现出来, 
    比如
    概率函数公式  p = g / gi(累加), g是什么, gi又是什么, 郁闷...图像直接数据无非是灰度值, 象一阶导数法求图像边界, 就是用各种模板进行卷积运算来求, 不存在代公式的问题, 难道还真去计算灰度函数的导数? 拿什么去往公式里套? 也就是说, 图像数据直接往公式里代是行不通的, 所以我觉得也应该是通过某种图像数据的卷积运算来求得一个近似函数值, 现在问题就是, 这个运算该怎么做, 如何做
      

  2.   

    g是图像函数f(x 的一阶微分,对应的应该是边缘图像,gi应该是g(i,j),边缘图像(i,j)处的灰度值。