资源简介
用于立体视觉匹配,采用基于窗口的SAD作为相关测度,窗口大小可以改变,程序采用C语言编写。
代码片段和文件信息
#include
#include
#include
#define w 384
#define h 288
#define DpMax 16
#define WinR 2
#define ff(ij) ip[(i)*w+(j)]
#define gg(ij) jp[(i)*w+(j)]
#define hh(ij) presult[(i)*w+(j)]
typedef unsigned char uchar;
int SAD(int aint bint cuchar * ipuchar *jp);
void Parallax(uchar * pluchar * pruchar * presult);
void main()
{
FILE * fp1* fp2* fp3;
uchar * pimgr* pimgl*pimgresult;
/*
**读取文件指针pimglpimgr
*/
pimgr=(uchar*)malloc(w*h*sizeof(uchar));
pimgl=(uchar*)malloc(w*h*sizeof(uchar));
pimgresult=(uchar*)malloc(w*h*sizeof(uchar));
fp1=fopen(“right.raw““rb“);
if(fp1==NULL)
{
printf(“打开文件right.raw失败/n“);
exit(0);
}
fp2=fopen(“left.raw““rb“);
if(fp2==NULL)
{
printf(“打开文件left.raw失败/n“);
exit(0);
}
fp3=fopen(“result1.raw““wb“);
if(fp3==NULL)
{
printf(“打开文件result1.raw失败/n“);
exit(0);
}
fread(pimgrw*hsizeof(uchar)fp1);
fread(pimglw*hsizeof(uchar)fp2);
Parallax(pimglpimgrpimgresult);
fwrite(pimgresult(w*h)sizeof(uchar)fp3);
fclose(fp1);
fclose(fp2);
fclose(fp3);
}
int SAD(int aint bint cuchar * ipuchar * jp)/*计算SAD函数*/
{
int ijsum=0;
int w1w2;
for(i=-WinR;i<=WinR;i++)
for(j=-WinR;j<=WinR;j++)
{
w1=(int)ff(i+aj+b);
w2=(int)gg(i+aj+c);
sum=sum+abs(w1-w2);
}
return(sum);
}
void Parallax(uchar * pluchar * pruchar * presult)/*画出视差图*/
{
int ijksadmind;
for(i=WinR;i for(j=WinR;j {
/*求出与对应点之间距离d*/
for(k=0;k {
if(k+j>=w)break;
sad=SAD(ijk+jprpl);
if(k==0)
{
min=sad;d=k;
}
else
{
if(sad {
min=sad;d=k;
}
}
}
/*将距离d作为灰度值输入到图result1.raw中*/
hh(ij)=(uchar)(d*(int)(256/DpMax));
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1909 2018-06-02 22:23 alterwindow.cpp
- 上一篇:CAN总线源代码c语言
- 下一篇:人工智能——水壶问题
相关资源
- CAN总线源代码c语言
- cs5532 的驱动程序C语言
- 如何用C语言编写步进电机驱动程序
- 文件转数组及C语言字符串工具
- 停车场管理系 C语言实现停车场管理
- 用C语言实现高斯-赛德尔迭代方法
- 21点游戏代码 C语言
- c语言链表的项目用链表实现的字典
- 用C语言实现图形菜单界面
- MSP430的C语言版跑马灯程序绝对可用
- c语言图形学鼠标点击画椭圆
- 实验3 C语言实现RC4加密算法报告
- C语言实现DES算法对任意文件加解密报
- 基于优先级调度进程算法的实现C语言
- 使用c语言编写的灰色预测模型
- C语言电子地图信息管理系统
- NFA到DFA的转换C语言实现
- C语言 学生信息管理系统 win7 win10版
- c语言实现pl0编译器的扩充
- 快速傅里叶变换_C语言代码
- C语言数据结构课程设计迷宫问题
- 房屋销售系统
- c语言实现图像的旋转与平移
- msado.dll用于ado
- C语言课程设计——家庭财务管理系统
- 51单片机基于C语言双机通信
- C语言经典讲义!华科密文
- 西南交大程序设计综合实验源代码c语
- 两串口通讯C语言源代码
- openssl c语言应用
评论
共有 条评论