FPGA的HDMI字符显示,图像采集叠加时钟显示

FPGA的HDMI字符显示,图像采集叠加时钟显示
话不多说先上测试效果图:
输入OV5640摄像头720P的图像,降采样后输出1080P的HDMI图像,在此基础上叠加字符:
在这里插入图片描述
首先介绍一下原理:
视频中叠加字符,实质就是在视频的某个区域中,将某些像素点替换颜色,比如:
在这里插入图片描述
在这个16X32的像素区域中,将“1”字型的像素点颜色替换为红色,其他像素点保持原来的图像像素,那么在视频中就会显示出“1”。
那么问题来了,想要做到字符叠加,必须解决三个问题:
1、字符哪里来?比如“1”的字型;
2、字符在图像中显示的位置如何确定?即显示位置算法是什么?
3、字符在图像中特定位置显示的逻辑,即怎么替换字符字型的像素点颜色?
带着这三个问题,我们一一解答。
1、字符哪里来?
使用字模提取软件,比如PCtoLCD,使用就不多说了,推荐去看正点原子的达芬奇Pro之FPGA开发指南。代码中设置了一个二维数组,如下:
在这里插入图片描述
数组在系统上电复位期间回写入字符。具体看我的代码吧,这里说不清楚。
2、字符在图像中显示的位置如何确定?
这就需要结合你的点阵字符的大小了,比如你是32X32的还是16X16的或者是48X48的,代码中会宏定义每个字符块的显示起始坐标,显示长和宽等,如下:
在这里插入图片描述
其中,固定字符的显示区域逻辑是这样的:
在这里插入图片描述
动态字符(也就是递增的时钟)的显示区域逻辑是这样的:
在这里插入图片描述
由于逻辑比较复杂,这里实在说不清楚,还是找我要代码,详细看代码吧。
3、字符在图像中特定位置显示的逻辑,即怎么替换字符字型的像素点颜色?
这里的逻辑性就更强了,直接看代码:
在这里插入图片描述
最后:整个源代码并未给出,可以私,我也可以给你适当的技术支持,教你怎么写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

9527华安

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值