关于VPIF_OV2640demo的问题 - 第5页 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题

关于VPIF_OV2640demo的问题

[复制链接]

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
26#
发表于 2014-9-29 22:04:59 | 只看该作者
蓝色火焰john 发表于 2014-9-29 19:48
在光盘所给的代码中,qdma()模块是
srcBuff = (char *)(image+1);//_srcBuff;
而不是向老师贴出的srcBuf ...

地址偏移一个字节~
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
25#
 楼主| 发表于 2014-9-29 19:48:20 | 只看该作者
希望缄默 发表于 2014-9-28 20:26
CMOS 采集回来图像数组 image[800*600*2]
LCD 显示图像数组 g_pucBuffer
你可以处理 image 中的数据产生 ...

在光盘所给的代码中,qdma()模块是
srcBuff = (char *)(image+1);//_srcBuff;
而不是向老师贴出的srcBuff = (char *)(image);//_srcBuff;
请问(image+1)是什么意思,为什么要+1?

回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
24#
 楼主| 发表于 2014-9-29 15:35:02 | 只看该作者

    srcBuff = (char *)(image+1);//_srcBuff;
请问上段代码(image+1)是什么意思,为什么要+1.还有就是用RGB565转换成Y,得到的Y值都很小啊?
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
23#
发表于 2014-9-29 11:09:19 | 只看该作者
蓝色火焰john 发表于 2014-9-29 10:43
unsigned char image_Y[800*600];//亮度图像数组



参考附件例程的说明~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
22#
 楼主| 发表于 2014-9-29 10:43:03 | 只看该作者
unsigned char image_Y[800*600];//亮度图像数组
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
21#
 楼主| 发表于 2014-9-29 10:42:21 | 只看该作者
为了得到相机的亮度图像,我在如下函数中增加了代码:
/****************************************************************************/
/*                                                                          */
/*                       VPIF中断服务程序                                                                               */
/*                                                                          */
/****************************************************************************/
static void VPIFIsr(void)
{
    unsigned int temp;
    unsigned int Y_i;
    unsigned short int PixelVal;
    unsigned short int R_Val,G_Val,B_Val;
#ifdef _TMS320C6X
    IntEventClear(SYS_INT_VPIF_INT);
#else
    IntSystemStatusClear(SYS_INT_VPIF);
#endif
    for(Y_i=0;Y_i<800*600;Y_i++)
    {
            PixelVal = *((unsigned short int *)(image)+Y_i);
            R_Val = (PixelVal & 0xF800) >> 11;
            G_Val = (PixelVal & 0x07E0) >> 5;
            B_Val = (PixelVal & 0x01F);

            image_Y[Y_i] = (R_Val * 0.3 + G_Val * 0.59 + B_Val * 0.11);
    }

    temp = VPIFInterruptStatus(SOC_VPIF_0_REGS, VPIF_ERROR_INT | \
                                                                            VPIF_FRAMEINT_CH3 | \
                                                                            VPIF_FRAMEINT_CH2 | \
                                                                            VPIF_FRAMEINT_CH1 | \
                                                                            VPIF_FRAMEINT_CH0);


        /* if error interrupt occurs, report error */
    if ((temp & VPIF_ERROR_INT))
    {
        error_flag = 1;
    }
}
麻烦帮忙看看代码是否有问题,通过调试的结果,image_Y中的值都是30以下,改变相机的亮度,值变化也不大。另外我想看看image_Y中的图像,应该怎么看?
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
20#
 楼主| 发表于 2014-9-29 08:10:59 | 只看该作者
希望缄默 发表于 2014-9-28 20:26
CMOS 采集回来图像数组 image[800*600*2]
LCD 显示图像数组 g_pucBuffer
你可以处理 image 中的数据产生 ...

谢谢大神
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
19#
发表于 2014-9-28 20:26:17 | 只看该作者
蓝色火焰john 发表于 2014-9-28 19:46
按照如上所述,若将rgb 16转换成YUV,应该在VPIF_OV2640程序的哪个模块进行添加代码?请赐教
...

CMOS 采集回来图像数组 image[800*600*2]
LCD 显示图像数组 g_pucBuffer
你可以处理 image 中的数据产生一个新的图像数组

数据的搬移是 EDMA实现的


所以你将处理完的图像数组名称替换 image 就可以了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
18#
 楼主| 发表于 2014-9-28 19:46:23 | 只看该作者
希望缄默 发表于 2014-9-28 14:42
呃~ 这个.....
转载~
YUV / RGB 格式及快速转换算法

按照如上所述,若将rgb 16转换成YUV,应该在VPIF_OV2640程序的哪个模块进行添加代码?请赐教
回复 支持 反对

使用道具 举报

1

主题

31

帖子

125

积分

注册会员

Rank: 2

积分
125
17#
 楼主| 发表于 2014-9-28 19:45:47 | 只看该作者
希望缄默 发表于 2014-9-28 14:42
呃~ 这个.....
转载~
YUV / RGB 格式及快速转换算法

按照如上所述,若将rgb16转换成YUV,应该在VPIF_OV2640程序的哪个模块进行添加代码?请赐教
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-18 09:26 , Processed in 0.045065 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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