找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8493|回复: 6
收起左侧

ov7670摄像头实验黑白二值化程序

[复制链接]
ID:226711 发表于 2017-8-10 20:06 | 显示全部楼层 |阅读模式
1.针对于ov7670输出的rgb565格式进行黑白二值化,可能会丢掉R、G、B中低3或2位的精确度,,实测中没有太大影响;

2.试验环境针对于STM32F10的板子,理想计算帧数应为每秒20帧左右,实际帧数达到每秒15帧左右;

3.此算法没有绿波,相对较为简单。

4.引脚连接请查看文件中README.TXT

5.图像查看,请查看LCD屏


所有资料51hei提供下载:
ov7670摄像头实验黑白二值化.rar (386.18 KB, 下载次数: 165)
回复

使用道具 举报

ID:278640 发表于 2018-1-22 17:13 | 显示全部楼层
lz,我用这个方法,然后LCD上全黑,是为什么?
回复

使用道具 举报

ID:317116 发表于 2018-4-26 22:25 | 显示全部楼层
同问lz,我用这个方法,然后LCD上全黑,是为什么?你测试过吗?而且还有一个错误,我修改之后就是一片黑!
回复

使用道具 举报

ID:332838 发表于 2018-6-12 15:19 | 显示全部楼层
新视野 发表于 2018-4-26 22:25
同问lz,我用这个方法,然后LCD上全黑,是为什么?你测试过吗?而且还有一个错误,我修改之后就是一片黑!

修改阀值就行了
回复

使用道具 举报

ID:373575 发表于 2018-7-18 09:22 | 显示全部楼层
一片黑,怎么改都没用,说是调阈值,但是那个是阈值也不交代清楚
回复

使用道具 举报

ID:226711 发表于 2018-12-19 13:34 | 显示全部楼层
看这里看这里
                                        color_r=color>>11;
                                        color_g=(color&0x07ff)>>5;
                                        color_b=color&0x001f;
//按照RGB5:6:5,分别取出红绿蓝三色
                                color_g=(color_g<<2)*58;
                                color_b=(color_b<<3)*11;
                                color=(color_r+color_g+color_b+50)/100;
//先将三色移位转换成8位(会失去后2、3位的精度),按照公式计算得出灰度值
//    公式:Gray = R*0.299 + G*0.587 + B*0.114,,程序里少东西了
                                if(color>100){        //此处“100”,为阈值,黑白取值范围0-255
                                        LCD->LCD_RAM=0xffff;
                                }
                                else{
                                        LCD->LCD_RAM=0;

                                }
回复

使用道具 举报

ID:138247 发表于 2019-5-2 15:24 | 显示全部楼层

谢谢楼主分享。。。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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