楽しみのZynqシリアル45 - [ex64] MT9V034カメラ画像鮮鋭化処理ラプラシアン

楽しい特権学生のZynqシリアル45 - [ex64] MT9V034カメラ画像の鮮鋭化プロセスラプラシアン

ここに画像を挿入説明
1システムの概要
としては、図示し、これは、ビデオキャプチャシステムの全体構成図です。初期パワー、FPGAレジスタは、CMOSセンサーIICインタフェースの初期設定で必要とされます。これらの基本パラメータ、すなわち、アドレスに対応する初期化初期化データは、FPGAチップROM良い内に事前構成に格納され、初期化。初期設定後、CMOSセンサーは、連続的に、このようなクロック、ライン及びフィールド周波数とその同期信号により出力標準RGB映像データストリーム、FPGAは、リアルタイムの画像データがデータバスから取得したように、検出されることができます。MT9V034デフォルトの初期化カメラを出力することができる通常のビデオデータストリーム、およびので、FPGA、実質的に任意の初期構成IICなし。
FPGA内部では、データを変換するために、FIFOを介してビデオデータをキャプチャするために50MHzの周波数では25MHzの元の周波数に同期したストリーム。このデータは、このFIFO内のデータは、彼らが一定数に達すると、それはAXI HP0 DDR3のバスライトが通過し、再書き込みキャッシュDDR3非同期FIFOに供給されます。同時に、AXI HP0 DDR3キャッシュバスは、FIFOバッファへの画像データを読み取り、そして最終的にLCDディスプレイドライバモジュールに送られます。LCDドライバモジュールは、継続的に読み取られた画像データを要求し、映像を表示する液晶表示装置を駆動します。
この例に加えて、上述した画像の流れと、DDR3キャッシュを示して行うだけでなく、前DDR3には、追加の画像ラインバッファと後に鋭利な新しいを得るために元の画像バッファに元の画像を処理ラプラシアン鮮鋭複数を行いますこの画像ストリームは、AXI HP1 DDR3バスを介してに書き込まれます。AXIのHP1バス要求は、画像読取処理が表示され、LCDディスプレイモジュールに基づいて説明します。最後VGA液晶ディスプレイに、左画像は原画像で見ることができ、右の画像は、鮮鋭化処理後の画像です。
ここに画像を挿入説明
2画像の鮮鋭化ラプラス

2.1 基本概念
在图像增强中,平滑是为了消除图像中噪声的干扰,或者降低对比度。与之相反,有时为了强调图像的边缘和细节,需要对图像进行锐化,提高对比度。
拉普拉斯锐化图像是根据图像某个像素的周围像素到此像素的突变,也就是说它的依据是图像像素的变化程度。我们知道,一个函数的一阶微分描述了函数图像是朝哪里变化的,即增长或者降低;而二阶微分描述的则是图像变化的速度,急剧增长下降还是平缓的增长下降。那么据此我们可以猜测出依据二阶微分能够找到图像的色素的过渡程度,例如白色到黑色的过渡就是比较急剧的。
或者用官方点的话说:当邻域中心像素灰度低于它所在的领域内其它像素的平均灰度时,此中心像素的灰度应被进一步降低,当邻域中心像素灰度高于它所在的邻域内其它像素的平均灰度时,此中心像素的灰度应被进一步提高,以此实现图像的锐化处理。

2.2拉普拉斯(laplace)算子
最常用的无方向性的二阶差分算子,其模板有33、55和77等多种形式。。
例如,以3
3算子为例,1~8像素是(x,y)点周围邻近的8个像素点。可以使用右侧的2种模板对(x,y)以及周边4或8个像素点进行运算,替代原来的(x,y)点。
ここに画像を挿入説明ここに画像を挿入説明ここに画像を挿入説明
当然了,根据中心点的权重程度,也可以使用如下2中模板来实现图像锐化。
ここに画像を挿入説明ここに画像を挿入説明
2.3 Matlab实现
基于第一种拉普拉斯锐化处理,我们的Matlab代码如下:
ここに画像を挿入説明
clear
clc
I1=imread(’.\lena.jpg’);
I=im2double(I1);
[m,n,c]=size(I);
A=zeros(m,n,c);

%for R
for i=2:m-1
for j=2:n-1
A(i,j,1)=I(i+1,j,1)+I(i-1,j,1)+I(i,j+1,1)+I(i,j-1,1)-4*I(i,j,1);
end
end

%for G
for i=2:m-1
for j=2:n-1
A(i,j,2)=I(i+1,j,2)+I(i-1,j,2)+I(i,j+1,2)+I(i,j-1,2)-4*I(i,j,2);
end
end

%for B
for i=2:m-1
for j=2:n-1
A(i,j,3)=I(i+1,j,3)+I(i-1,j,3)+I(i,j+1,3)+I(i,j-1,3)-4*I(i,j,3);
end
end

B=I-A;

%output
imwrite(B,‘lena.tif’,‘tif’);
imshow(’.\lena.jpg’);title(‘origin image’);figure
imshow(‘lena.tif’);title(‘image after laplace transform’)
滤波效果如下。
ここに画像を挿入説明
Matlab源码、Lena.jpg原图和比对图存放在project\zstar_ex64\matlab文件夹下。

3 FPGAベースの画像の平滑化
プロジェクトフォルダプロジェクト\ zstar_ex64 \ zstar.srcs \ sources_1 \ laplace_transform.v ラプラス鮮鋭化処理中に新しいモジュールを実現します。N-1番目の画像であり、n行目と行N + 1、制御入力データストリーム機能ブロック図は二つのFIFO使用され、長手方向の行をバッファリングするために、3つのデータストリームは、画像処理に入るとFIFOは、同じ場所にバッファ前および画像ピクセル後の値を登録する二つの像は、アップリンクとダウンリンクとの間に2つの中心画素を実現することができるように、キャッシュ、および前の列、データ同期処理です。
ここに画像を挿入説明
4つのアセンブリ命令
MT9V034カメラモジュールが開発ZSTARのZynq ZSTAR ISBプレート(P3)を介して基板に接続され、VGAはまた、バックプレーンZSTAR ISB ZSTARのZynq開発ボード、また、VGAモニタに接続する必要がVGAボードを介して接続されています。接続は、図1に示します。
ここに画像を挿入説明
デバッグ5ボードレベル
本実施相当ex64例プロジェクトのは、次にboot.binは、プロジェクトパス「zstar_ex64 \ zstar.sdk \ BOOT」に置か良い生産しています。また、ドキュメントを参照することができ、「楽しいZynq-例ピース:裸のランニング[ex51] BOOT.bin.pdfスタートアップファイルの生成プログラム」ファイルは、次にboot.binのBITファイルを含んで生産、TFカード挿入開発ZSTARにコピーしますスロット板は、よく接続金具、電力を見ることができるVGA表示が同時に右の画像は、画像鮮鋭化処理であり、左画像は原画像であり、左右の画像を表示します。

公開された46元の記事 ウォンの賞賛0 ビュー2651

おすすめ

転載: blog.csdn.net/qq_45922361/article/details/104490694