|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
根据帧差法的实现流程,设计的双端口SDRAM控制器,一侧读写端口用做帧缓存,另一个端口用来缓存视频流。
. ?. x: z! t: [: Z! \- n. z+ d$ W2 H: C
首先,摄像头的输出格式是RGB56格式,经过颜色空间的转换转化为灰度数据流,写入到SDRAM1端口侧,等到延时一帧时刻到来,从第二帧开始两帧图像做差分。
& W# D2 i5 K3 [ G4 l4 f4 E9 d9 E- K, R) C, A
但此时得到的差分后的二值图像,由于光照背景的变化会有很大的噪声,因此还需要进行了形态学滤波。先进行腐蚀以去除图像中的物体边界点,清除图像中比结构元素小的毛刺或者小突起,再进行膨胀以填充图像中小于结构元素的孔洞以及图像边缘部分的一些小凹陷,增加连通性。) Z6 R! ^6 N6 f* V( O8 X
" j. n1 t, B6 C3 s; K1 J' D4 @8 U
然后求得包围盒左下角和右上角像素坐标,与原始RGB图像叠加后重新写入到SDRAM2端口,此时VGA就可以显示处理后的图像的效果。& W! A. {3 j( X7 t
: f+ |8 V5 P+ a1 ^/ U2 F2 X4 y
本文的包围盒实现是基于单目标检测,检测原理:
/ j' J) S- | X7 u5 R1 v
1 d. k* w+ x5 u9 f7 r将该像素的地址载入Xmin,Ymax,Xmax,Ymin 寄存器,由于图像按照光栅的顺序扫描,所以第一个像素会提供Ymin的值。每个目标像素的Y值都存入Ymax寄存器,这样当一帧结束时,Ymax的存储的是最一个目标像素的Y值,从第二个目标像素开始,每个目标像素的X值都与Xmin和Xmax比较,不断的对Xmin和Xmax调整,在一帧结束后,四个寄存器中的数值指示了图像上的目标的像素范围即包围盒。$ M! L% [7 n: k6 e; k& B' S
|
|