智能车制作

标题: 野火编写的:ov7725数字摄像头编程基本知识笔记 [打印本页]

作者: 野火    时间: 2012-11-21 22:29
标题: 野火编写的:ov7725数字摄像头编程基本知识笔记
本帖最后由 野火 于 2012-11-21 22:43 编辑

因为比较多人问摄像头问题,野火就把摄像头的时序、常见的采集方法、采集图像的常见问题整理一下
尤其是采集问题,列举了论坛中几个帖子,并把他们的图片放到笔记里,方便大家遇到问题可以参考是否存在这些问题

话不多说,看图……

[attach]35656[/attach]

[attach]35657[/attach]

[attach]35658[/attach]

[attach]35659[/attach]


[attach]35655[/attach]




补充内容 (2012-12-5 22:24):
78楼 增加一个改变图像采集分辨率 和 全屏显示例程
作者: wanglichao    时间: 2012-11-21 22:39
这个不错,顶上去。
作者: 十七岁不哭    时间: 2012-11-21 22:46
野火的。。。。。一定要顶。。。。。
作者: 野火    时间: 2012-11-21 22:47
wanglichao 发表于 2012-11-21 22:39
这个不错,顶上去。

哇哦,斑竹耶,谢谢支持

作者: 那年_夏天    时间: 2012-11-21 22:48
这么快,只能是前排了,顶
作者: 乌龟小子    时间: 2012-11-21 22:51
酷……下载一个……火哥真厉害!!!
作者: vip101vip    时间: 2012-11-21 22:51

作者: back    时间: 2012-11-21 22:52
:lo支持,顶啊顶
作者: 谨慎    时间: 2012-11-21 22:56
解释得很清楚明了,很适合新人上手,感谢野火
作者: 798187427    时间: 2012-11-21 22:58
顶起啊 感谢野火
作者: 黄明小伙仔    时间: 2012-11-21 23:05
学习……
作者: 野火    时间: 2012-11-21 23:07
谨慎 发表于 2012-11-21 22:56
解释得很清楚明了,很适合新人上手,感谢野火

恩,谢谢支持。摄像头组的朋友多提意见,大家交流。。。。。。。。。。。

作者: 野火    时间: 2012-11-21 23:10
黄明小伙仔 发表于 2012-11-21 23:05
学习……

高速硬件二值化,每秒150帧,无线传输图像38帧,让车友有足够的时间给算法来处理数据

作者: 暗黑破坏神    时间: 2012-11-21 23:59
难道我下载了也会告诉你?先收下……
作者: 品江南    时间: 2012-11-22 00:24
必须顶一个
作者: 青龙00    时间: 2012-11-22 01:09
表示学习!顶一下
作者: zjabxjzs@mail.b    时间: 2012-11-22 07:22
很好的资料,收藏一个……
作者: digital01    时间: 2012-11-22 08:02
火哥板子跳票了哦,给个时间呗
作者: 1228463834    时间: 2012-11-22 08:43
顶顶
作者: 乌龟小子    时间: 2012-11-22 08:53
digital01 发表于 2012-11-22 08:02
火哥板子跳票了哦,给个时间呗

已经有货了啊……我昨天才下单了……

作者: 光屁屁羞挂你    时间: 2012-11-22 09:28
野火必出精品~!
1024{:soso_e113:}

作者: ganlei    时间: 2012-11-22 09:45
7725输出不是直接为黑白的吧
作者: jack_channel    时间: 2012-11-22 09:56
组委会允许使用集成硬件二值化的摄像头吗?亲
作者: 野火    时间: 2012-11-22 10:12
jack_channel 发表于 2012-11-22 09:56
组委会允许使用集成硬件二值化的摄像头吗?亲

亲~出这款摄像头之前就已经先询问了卓晴老师,确定可以使用才推出……动态阈值,硬件二值化,所用的都是门电路芯片,都在允许的范围之内……

作者: 野火    时间: 2012-11-22 10:16
ganlei 发表于 2012-11-22 09:45
7725输出不是直接为黑白的吧

{:soso_e113:}本身不是黑白,是我们的硬件电路设计……

作者: 野火    时间: 2012-11-22 10:23
光屁屁羞挂你 发表于 2012-11-22 09:28
野火必出精品~!
1024

{:soso_e113:}谢谢哥们的支持

作者: abch1120    时间: 2012-11-22 10:54
{:soso_e179:}
作者: ganlei    时间: 2012-11-22 12:12
野火 发表于 2012-11-22 10:16
本身不是黑白,是我们的硬件电路设计……

硬件?貌似默认输出是RGB并且还是连续两个8位数据组成在一起的,就算是YUV的也应该是422输出的吧
作者: ganlei    时间: 2012-11-22 12:16
野火 发表于 2012-11-21 23:10
高速硬件二值化,每秒150帧,无线传输图像38帧,让车友有足够的时间给算法来处理数据

现在做出来貌似还要用SCCB改寄存器吧,表示7725和7670混了!~
作者: digital01    时间: 2012-11-22 12:56
支持火哥,秒杀其他各种摄像头啊!
作者: 野火    时间: 2012-11-22 14:12
digital01 发表于 2012-11-22 12:56
支持火哥,秒杀其他各种摄像头啊!

秒杀不敢,大家各有各的特点,希望智能车越做越好。

作者: 野火    时间: 2012-11-22 14:13
光屁屁羞挂你 发表于 2012-11-22 09:28
野火必出精品~!
1024

大家一起交流,看到你的微博了

作者: 野火    时间: 2012-11-22 14:14
digital01 发表于 2012-11-22 08:02
火哥板子跳票了哦,给个时间呗

什么是跳票

作者: blueskywalker    时间: 2012-11-22 20:51
火锅,我来了,这教程写的真的是图文并茂呀

作者: digital01    时间: 2012-11-22 20:52
野火 发表于 2012-11-22 14:14
什么是跳票

就是推迟发布、上市哈,基本各大公司的热门产品都有过的,不过已经看到淘宝已经开始出货啦!

作者: 552431024    时间: 2012-11-22 21:04
顶一下
作者: 那年_夏天    时间: 2012-11-22 23:09
想问下,第三种方法,DMA+场中断的方法,当进入消隐区时,pclk不还在吗?那样不会采到消隐区?想不明白,求解释下。还有这个方法是不是每行的所有点都会采集了,直到大于n那行才结束?
作者: 野火    时间: 2012-11-22 23:37
那年_夏天 发表于 2012-11-22 23:09
想问下,第三种方法,DMA+场中断的方法,当进入消隐区时,pclk不还在吗?那样不会采到消隐区?想不明白,求 ...

我们测试过行与行之间PCLK是没有的

作者: 特级小菜虫    时间: 2012-11-23 08:01
野火总是喜欢走精品路线……
作者: 光屁屁羞挂你    时间: 2012-11-23 09:53
野火 发表于 2012-11-22 14:13
大家一起交流,看到你的微博了

你确定是我的微博??我貌似不玩微博额

作者: tearedice    时间: 2012-11-23 10:34
mark一下,谢谢楼主
作者: 那年_夏天    时间: 2012-11-23 13:00
野火 发表于 2012-11-22 23:37
我们测试过行与行之间PCLK是没有的

这个方法是不是只能连续一行一行地采集,而且是能采到行那行的点全部采集到?如果这样n不要很大,不然就采到前几行,不影响吗?

作者: 389059751    时间: 2012-11-23 16:09
学习了
作者: sangxiaoran    时间: 2012-11-23 17:21
悲剧的是我们的数字摄像头只采集然后发送。有的时候会发送上下颠倒,换用ccd就没事了。这是什么原因
作者: rrk    时间: 2012-11-23 19:10

作者: 野火    时间: 2012-11-24 05:42
那年_夏天 发表于 2012-11-23 13:00
这个方法是不是只能连续一行一行地采集,而且是能采到行那行的点全部采集到?如果这样n不要很大,不然就采 ...

是整幅图像完整采集


作者: 野火    时间: 2012-11-24 05:43
sangxiaoran 发表于 2012-11-23 17:21
悲剧的是我们的数字摄像头只采集然后发送。有的时候会发送上下颠倒,换用ccd就没事了。这是什么原因

场中断没处理好,就会出现一副图片变成上下两幅图片

作者: 小草哥    时间: 2012-11-24 08:57
野火,果然与众不同啊,好一个精品……
作者: 鸡蛋灌饼    时间: 2012-11-24 11:20
好是好,就是太贵了

作者: sangxiaoran    时间: 2012-11-24 11:26
野火 发表于 2012-11-24 05:43
场中断没处理好,就会出现一副图片变成上下两幅图片

换用ccd或者是模拟5116 差不多的程序就没有这种情况、。、、
作者: 野火    时间: 2012-11-24 11:54
鸡蛋灌饼 发表于 2012-11-24 11:20
好是好,就是太贵了

ov7725 的价格比 ov7620 贵一倍 …… 四层PCB,加沉金 ,更加比普通的双层板贵16倍的价格……

放弃用 ov7620 的原因是受不了如此高的速度,放弃双层,是抗干扰能力不行……


作者: 黑马丸子    时间: 2012-11-24 15:27
mark,谢谢楼主……
作者: 不告诉你    时间: 2012-11-25 08:00
走过路过,顶过……
作者: 野火    时间: 2012-11-25 11:31
不告诉你 发表于 2012-11-25 08:00
走过路过,顶过……

{:soso_e113:}谢谢支持……

作者: 山外メ雲ジ    时间: 2012-11-25 15:56
我们研究很久才设计出来的
作者: cxn5127111    时间: 2012-11-25 16:45
额~我用的是7620~
作者: 野火    时间: 2012-11-25 16:48
cxn5127111 发表于 2012-11-25 16:45
额~我用的是7620~

7620,容易加工,容易设计,所以很多淘宝卖家在极力推荐。
但速度很慢,而且噪点多


作者: cxn5127111    时间: 2012-11-25 17:16
野火 发表于 2012-11-25 16:48
7620,容易加工,容易设计,所以很多淘宝卖家在极力推荐。
但速度很慢,而且噪点多

野火先生,您在网上发布了很多的野火k60开发板开源代码,请问有7725的摄像头采集并串口传输给上位机的吗?真不希望在底层驱动的编写上花费太多时间。

作者: 野火    时间: 2012-11-25 17:37
cxn5127111 发表于 2012-11-25 17:16
野火先生,您在网上发布了很多的野火k60开发板开源代码,请问有7725的摄像头采集并串口传输给上位机的吗? ...

没有串口传输到上位机的例程
不过那个也得按照上位机的协议来发送,我们图像都采集到了,发送这个就容易得多了。

我们推荐是无线调试与无线图像传输,通过NRF24L01+模块,把图像发送到调试板上,同时调试板可以通过按键来控制发送变量的值给摄像头模块。可以摆脱电脑的约束,调试的时候,直接跑到小车旁边,小车在跑,把图像传给你,你可以看到小车跑的过程所采集到的路况,方便后续处理。
无线传输,我们现在已经优化到速度为37.5帧每秒,比普通的摄像头(25帧和30帧)还快啊。


作者: aptx4869qiang    时间: 2012-11-25 18:22
顶!!!
作者: 刘胜利    时间: 2012-11-28 02:02
火哥我买了一套,买来的时候图像动态太牛叉了,当时是全屏显示,烧了一个程序后显示变小了,请问火哥什么情况,求解答
作者: 野火    时间: 2012-11-28 07:54
刘胜利 发表于 2012-11-28 02:02
火哥我买了一套,买来的时候图像动态太牛叉了,当时是全屏显示,烧了一个程序后显示变小了,请问火哥什么情 ...

呵呵,我们还没上传全屏显示的例程,这两天把例程上传到论坛上。
教你们怎么设置图像显示大小和摄像头输出大小。



作者: 野火    时间: 2012-11-28 08:07
刘胜利 发表于 2012-11-28 02:02
火哥我买了一套,买来的时候图像动态太牛叉了,当时是全屏显示,烧了一个程序后显示变小了,请问火哥什么情 ...

可以测试一下,在较暗一些的环境下,依旧保持非常好的二值化效果



作者: 携影者    时间: 2012-11-28 09:43
好的,顶
作者: 飞思迷    时间: 2012-11-28 10:30
野火 发表于 2012-11-28 08:07
可以测试一下,在较暗一些的环境下,依旧保持非常好的二值化效果

较亮的情况下呢?

作者: 刘胜利    时间: 2012-11-28 10:38
火哥顶你。。。顶你
作者: 刘胜利    时间: 2012-11-28 10:38
再顶一下
作者: 伯恩rw    时间: 2012-11-29 19:39
这个必须得顶:):):):):):):):):):):)
作者: blueskywalker    时间: 2012-11-30 22:04
野火 发表于 2012-11-25 17:37
没有串口传输到上位机的例程
不过那个也得按照上位机的协议来发送,我们图像都采集到了,发送这个就容易 ...

卧槽,要是当年我有这调试利器该多爽啊

作者: Tiphone    时间: 2012-11-30 22:31
野火的顶起。。。。。。。。。。。。。。。。。。。
作者: 刘胜利    时间: 2012-12-2 19:34
火哥鹰眼全屏的程序神魔时候出来啊?求共享啊
作者: 野火    时间: 2012-12-3 08:43
刘胜利 发表于 2012-12-2 19:34
火哥鹰眼全屏的程序神魔时候出来啊?求共享啊

前两天,保存资料的电脑被偷了
暂停工作了一下
今晚或者明晚就发上来


作者: 刘胜利    时间: 2012-12-5 10:04
火哥辛苦啦 
作者: 刘胜利    时间: 2012-12-5 10:04
顶你
作者: 水木风情    时间: 2012-12-5 18:30
很不错
作者: jianbo2006    时间: 2012-12-5 22:07
你好,摄像头出现抖动,是什么造成的呢?
作者: 野火    时间: 2012-12-5 22:11
jianbo2006 发表于 2012-12-5 22:07
你好,摄像头出现抖动,是什么造成的呢?

抖动?还是闪烁?

如果是闪烁,是因为白光灯闪烁,导致采集的图像也是闪烁……白天,或者多灯光的情况下,就会好了


作者: 野火    时间: 2012-12-5 22:23
增加一个改变图像采集分辨率 和 全屏显示例程:
[attach]36322[/attach]

作者: 野火    时间: 2012-12-5 22:25
刘胜利 发表于 2012-12-2 19:34
火哥鹰眼全屏的程序神魔时候出来啊?求共享啊

78楼可以下载了

作者: 潘俊    时间: 2012-12-6 19:13
野火越来越火,顶... ...
作者: jianbo2006    时间: 2012-12-6 20:54
野火 发表于 2012-12-5 22:11
抖动?还是闪烁?

如果是闪烁,是因为白光灯闪烁,导致采集的图像也是闪烁……白天,或者多灯光的情况 ...

[attach]36382[/attach]
异常采集情况
[attach]36383[/attach]
正常采集情况

只使用场中断进行处理,摄像头拍的位置不变。

作者: 野火    时间: 2012-12-6 21:13
jianbo2006 发表于 2012-12-6 20:54
异常采集情况

正常采集情况

我们测试过,直接保存在SD卡,在LCD上看,测试了超过15分钟,都没出现你说的情况……图片采集几千张了……

我们的客服反应的是,你是通过串口发送到上位机的,上位机直接支持我们的二值化图像格式?还是你自行转格式?
另外,从你给的图像分析,是传输过程中丢失了一字节(8个点),导致后续图像都发现偏移,请测试串口传输的稳定性……


作者: 刘胜利    时间: 2012-12-7 20:14
火哥顶你。。。。。。。。
作者: 野火    时间: 2012-12-7 21:38
刘胜利 发表于 2012-12-7 20:14
火哥顶你。。。。。。。。

这哥们,谢谢支持哦!{:soso_e113:}留意你很久了

作者: jianbo2006    时间: 2012-12-8 01:24
野火 发表于 2012-12-6 21:13
我们测试过,直接保存在SD卡,在LCD上看,测试了超过15分钟,都没出现你说的情况……图片采集几千张了…… ...

[attach]36509[/attach]

火哥,你好,我首先是将压缩图像通过你们编写的解压缩函数进行解压,然后再发送给上位机。上位机测过可以使用,串口也稳定(已经用另外一个摄像头测试过,发送数据正确,图像不会偏移,采用行场中断采集,串口发送)。由于买回来的摄像头用杜邦线来接相应的口,猜测可以是摄像头信号衰减的问题,但是到目前为止也没有发现具体的问题。

作者: jianbo2006    时间: 2012-12-8 01:25
jianbo2006 发表于 2012-12-8 01:24
火哥,你好,我首先是将压缩图像通过你们编写的解压缩函数进行解压,然后再发送给上位机。上位机测过 ...

[attach]36510[/attach]


作者: 刘胜利    时间: 2012-12-8 14:43
野火 发表于 2012-12-7 21:38
这哥们,谢谢支持哦!留意你很久了

支持火哥那是必须的,火哥的贡献没的说

作者: 刘胜利    时间: 2012-12-8 14:48
在LCD上显示不是更好
作者: 刘胜利    时间: 2012-12-8 16:05
野火 发表于 2012-12-5 22:25
78楼可以下载了

火哥在原来的小图像程序上可以把图像该大吗?请教火哥

作者: jianbo2006    时间: 2012-12-8 20:16
刘胜利 发表于 2012-12-8 14:48
在LCD上显示不是更好

有很多参数直接发送到电脑上显示,这样方便调节。LCD在车跑动的过程中就无法查看了。

作者: 刘胜利    时间: 2012-12-8 21:13
那就在上位机上显示又在LCD上显示
作者: 刘胜利    时间: 2012-12-8 21:24
jianbo2006 发表于 2012-12-8 01:25

你用的是鹰眼的程序吗

作者: 刘胜利    时间: 2012-12-9 13:18
火哥不得不顶你啊。。。。。顶。。。插上无线就可以全屏显示了,可我只插了一个无线
作者: 涂文俊    时间: 2012-12-9 17:08
感谢,新买的鹰眼摄像头下周差不多到了,期待
作者: jianbo2006    时间: 2012-12-9 19:18
刘胜利 发表于 2012-12-8 21:24
你用的是鹰眼的程序吗

对的,不过为了适应上位机,进行过一定的修改。你有没有试过把鹰眼的摄像头不直接插入调试板,而是用线进行连接,不知道这样会不会影响摄像头的采集。
作者: 刘胜利    时间: 2012-12-9 20:55
这个我没试过,还没有对应的线,请问你的图像上位机显示,是用的蓝牙吗,还是?
作者: 野火    时间: 2012-12-9 21:14
刘胜利 发表于 2012-12-9 13:18
火哥不得不顶你啊。。。。。顶。。。插上无线就可以全屏显示了,可我只插了一个无线

不插无线,会初始化失败……会死循环

插上后,尽管发送失败,但还是可以正常显示,不会死循环等待


作者: 野火    时间: 2012-12-9 21:17
jianbo2006 发表于 2012-12-9 19:18
对的,不过为了适应上位机,进行过一定的修改。你有没有试过把鹰眼的摄像头不直接插入调试板,而是用线进 ...

除非线太长,不然不影响的……


作者: 野火    时间: 2012-12-9 21:35
jianbo2006 发表于 2012-12-8 01:24
火哥,你好,我首先是将压缩图像通过你们编写的解压缩函数进行解压,然后再发送给上位机。上位机测过 ...

请问线长是多少?
有可能是线太长,导致DMA模块漏识别一两次采样,而发送偏移……


作者: 刘胜利    时间: 2012-12-10 10:11
野火 发表于 2012-12-9 21:14
不插无线,会初始化失败……会死循环

插上后,尽管发送失败,但还是可以正常显示,不会死循环等待

火哥确实是对的,顶你火哥。。。。。。。。





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2