注册 登录
查看: 402|回复: 8

[平衡组] 线性CCD中的计算差分绝对值,求教 谢谢

[复制链接]
发表于 2015-1-29 09:01:25 | 显示全部楼层 |阅读模式
请问 山外程序的中 计算出来的差分绝对值 *dst = tmp; 这个指针指向了他的地址 可是它保存在哪里哇,void abs_diff(uint8 *dst,uint8 *src,uint16 len,uint8 * maxval,uint8 * avgval){
    int8 tmp;
    uint8 max = 0;
    uint32 sum = 0;
    uint16 lentmp = len;
    while(--lentmp)                 //仅循环 len-1 次
    {
        tmp = *(src+1)- *src;
        tmp = ABS(tmp) ;
        if(tmp > max )
        {
             max = tmp;
        }

        sum += tmp;
        *dst = tmp;
        src++;
        dst++;
    }
    *dst = 0;               // 最后一个 点配置为 0
    *maxval = max;           // 返回最大绝对差值
    *avgval = (uint8)(sum/(len-1));  //前 len -1 个数的平均值
}请问是不是保存在uint8 CCD_BUFF[TSL1401_MAX][TSL1401_SIZE];这里,我不懂,求教,谢谢

回复

使用道具 举报

发表于 2015-1-29 12:21:38 | 显示全部楼层
就是个二维数组,翻一下c语言的书吧。
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

发表于 2015-1-29 12:22:18 | 显示全部楼层
如果不懂c语言,真不好讲解
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

发表于 2015-1-29 12:23:01 | 显示全部楼层
这函数就是很常见的指针操作。
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-29 12:33:30 | 显示全部楼层
微粒子 发表于 2015-1-29 12:23
这函数就是很常见的指针操作。

可是我没有看到 它指向那个数组呢?
怎么也应该有一个指向的哇
回复 支持 反对

使用道具 举报

发表于 2015-1-29 12:45:22 | 显示全部楼层
彭意达 发表于 1422506010
可是我没有看到 它指向那个数组呢?
怎么也应该有一个指向的哇
dst 是形参!!
形参是调用的时候赋值的。
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-29 12:54:11 | 显示全部楼层
山外メ雲ジ 发表于 2015-1-29 12:45
dst 是形参!!
形参是调用的时候赋值的。

那请问山外哥 我这样发送图像给上位机的时候vcan_sendccd((uint8 *)&CCD_BUFF[0] , TSL1401_SIZE);差分的波形应该是没有发送道德吧?如果发送差分波形改怎么改?给我一点小提示
回复 支持 反对

使用道具 举报

发表于 2015-1-29 13:18:22 | 显示全部楼层
彭意达 发表于 2015-1-29 12:54
那请问山外哥 我这样发送图像给上位机的时候vcan_sendccd((uint8 *)&CCD_BUFF[0] , TSL1401_SIZE);差分的 ...

我们的上位机,本身就自带了计算差分波形。

所以你发送原始图像上去就OK了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-29 15:09:55 | 显示全部楼层
山外メ雲ジ 发表于 2015-1-29 13:18
我们的上位机,本身就自带了计算差分波形。

所以你发送原始图像上去就OK了

对喔。。感谢山外哥。。。最后一个问题。当我用差分值来识别跑到的时候。那它现在如果不外加程序的话,*(src+1)-*src还是原始数组的差分值吗??是不是要写个程序让他们对应起来哇?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部