Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 17903|回復: 5
打印 上一主題 下一主題

[問題求助] FPGA用於數位影像處理?

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-12-11 00:47:16 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位前輩.小弟目前手上有一個xillinx的FPGA版子! 目前想要建構一個如下的環境:
$ K! J% F0 O3 t+ N讀取一張影像,經過一個簡單的運算(ex.把一張影像的每個pixel值作一些運算) 輸出到VGA的螢幕上!6 y# v- C! b5 T8 g) i
想請教各位幾個問題(之前無FPGA的學習經驗)
2 V* [8 w+ M, M1 k$ b+ m1.verilog 有讀取一張影像的指令嗎?我的想法是寫一個verilog code 把要處理的影像就直接寫在code上.  I# y5 d( ^3 I
  燒錄到版子上,直接秀在螢幕上.) c6 B; V5 K% x; E2 w' K3 d) i
2.如果是要把處理好的影像輸出到VGA螢幕上(FPGA板上有VGA Port),還需要寫什麼程式嗎?8 V% t" z! ]+ ^& F

( }- l- e) W+ j  D1 T<ps>如果有相關的參考資料(網站,書),可提參考的話,也非常感激!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2008-12-11 13:38:41 | 只看該作者
有幾件事你必須先決定。
( ?* Q4 `: x! {/ R# v5 n7 r5 H  ^1 |1.影像儲存的地方及大小. Z' N7 |. t& g, Z; N- s# e, f
2.影像如何和PC之間傳輸及驗證0 v) L9 r" W* A1 l% _+ n* G1 V
我規劃的方法
& i: m1 |& a' \2 \' V4 }% T0 S  L1.使用SDRAM存,所以要使用SDRAM控制器的IP; |" W. P- L7 o8 g
2.使用PCI界面,確保資料流量
% X7 l9 ^0 x: e4 A* N7 |至於VGA,暫不考量,因為要是資料處理錯誤,從VGA是看不出來的。8 p+ o4 Y& x3 N& ?9 Y
我是從PC的記憶體傳到PCI卡上的FPGA處理完再回傳PC。至少可以比對處理狀況,或是單格處理再比對。% `+ _0 p/ I+ W& F! _2 q
要是你用獨立板子,那又要處理攝影問題。至少PC不用,可以使用錄好的檔案。. d$ F9 u; M' B- r! P/ j' @7 x! k
做即時攝影處理,我做過,完全看不出資料處理錯誤時的狀況。只能知道處理錯誤,然後猜。

評分

參與人數 1Chipcoin +3 收起 理由
masonchung + 3 感謝經驗分享!

查看全部評分

3#
發表於 2008-12-14 16:48:53 | 只看該作者
Altera有一塊板子他提供NTSC/PA IN,VGA out的參考設計,而且全部都是source code,你可以參考這個設計^_^- A" {+ r' M/ Y
網址如下:  Z) [0 d: `; [
http://www.terasic.com.tw/cgi-bi ... goryNo=38&No=567 s/ y0 C+ a5 ^  s+ P/ I
想design TV的人可以參考,板子規格如下:1 ^1 @& X, ], y  m. W8 ]6 r: w
Altera Cyclone II 2C35 FPGA with 35000 LEs . a$ b. w. ~; V, I& d
Altera Serial Configuration deivices (EPCS16) for Cyclone II 2C35 - j: o" d3 y8 T- _3 L
USB Blaster built in on board for programming and user API controlling
; I" a* g; n( X8 J* ^7 }# R9 FJTAG Mode and AS Mode are supported : @# P0 `; I8 o; y1 V# G
8Mbyte (1M x 4 x 16) SDRAM
2 l+ \& k2 `3 b( Z2 x4 Q512K byte(256K X16) SRAM
; q) o4 m8 V4 @* P, M4Mbyte Flash Memory (upgradeable to 4Mbyte) 8 B1 T9 n0 l6 Z! Q
SD Card Socket 2 b1 ~( m1 P" o4 S
4 Push-button switches . p, ~8 P/ Y* e( r
18 DPDT switches 1 O; S- Q  a" |# ?: V! \
9 Green User LEDs ( b; B" A& F3 e" N$ ]5 H7 T" m, E
18 Red User LEDs , r: c5 Q( I$ c# Z
16 x 2 LCD Module $ i0 j: P7 E* Y9 _9 j9 d! C
50MHz Oscillator and 27MHz Oscillator for external clock sources 0 e& \% p$ {2 b8 c' D* i
24-bit CD-Quality Audio CODEC with line-in, line-out, and microphone-in jacks
/ w5 J7 C" s3 B; p& C# {: YVGA DAC (10-bit high-speed triple DACs) with VGA out connector
3 B) l( Y2 a/ ]; m, |) @1 w, n" eTV Decoder (NTSC/PAL) and TV in connector 5 X6 e& g, D; q+ x* v8 M8 c# q
10/100 Ethernet Controller with socket. 7 Q* U( Q1 b) X$ h& u- G! M
USB Host/Slave Controller with USB type A and type B connectors. 7 }( o8 U+ O1 f: y% H7 [2 ~4 H
RS-232 Transceiver and 9-pin connector
4 F+ o. K0 q) w+ D2 O& J3 bPS/2 mouse/keyboard connector
; E9 N1 u! t- y, H+ u) k# F& yIrDA transceiver & Q8 F1 }7 O% e' j4 c
Two 40-pin Expansion Headers with diode protection - p7 v% v- v. ~! k
DE2 Lab CD-ROM which contains many examples with source code to exercise the boards, including: SDRAM and Flash Controller, CD-Quality Music Player, VGA and TV Labs, SD Card reader, RS-232/PS-2 Communication Labs, NIOSII, and Control Panel API   ?0 ]2 t3 t2 b$ X% x, y- P& b  Z
Size:153*203 mm
4#
發表於 2008-12-15 13:26:43 | 只看該作者
DE2這個發展板,是基於NIOS-II的Soft-CPU上。也有CCD模組可以選購。
- C4 _( K9 E7 V9 D1 k4 H/ s! V不過,影像處理需要很高的效能,不可以在Soft-CPU上執行,必須自行建立處理模組以裝置的方式掛上。( x0 c: o# H7 r
可以我覺得因為影像處理使用很多FPGA的資料,再加上一個Soft-CPU,真的不知是否可以擠進去。
5 G3 d6 j! x4 U! Y至於和PC端的傳輸,大概只能使用USB。可能要做出單格的方式來驗證演算法。+ v: Q# l/ v; F0 }
使用這板子做VGA顯示,已有台大研究生做出來,也是用在影像處理上,用Google找找吧。
5#
發表於 2008-12-16 11:14:01 | 只看該作者
你能確定你的資料輸入的模式嗎?: {. i0 a9 ?6 v
就是說資料進入FPGA的方式是哪一種?
# T* J8 R' w0 p- [% h' l2 d+ ~6 S實務上的作法就是 你要先確定你的版子是哪一種資料輸入
$ M; [. n) M# G) J9 ^以及是哪一種訊號模式進入FPGA?; T* {6 l$ G' D1 h, Z
然後妳才能有辦法寫code去判斷一張FRAME的起始2 t4 u) {+ K+ z
判斷起始以後再去判斷每一條LINE的起始
8 j7 D% ~/ g; f  a; @: K有辦法判斷起始以後再去對pixdata進行演算法運算
5 A. Q+ x. v9 a4 `9 f影像處理最主要是演算法的驗證,可以實現的演算法不一定能用
+ U5 Y2 O% g2 B因為gate會太多以致COST大增,以你的想法是想要把資料寫在CODE裡面4 ?1 W$ S+ j" y# Q$ V3 l
或是把影像從RAM拉出來一次,然後運算以後儲存,在輸出運算一次的結果到螢幕
8 f/ O) g. R7 e( y" s9 Q8 m' `這只能確認演算法的展現成果,但是對於實際影像運作就不行  N) T0 g$ g5 \2 G% P9 c* A& I7 @: K
因為影像是連續的,實際的運作流程會是判斷影像的資料型態,
* j2 `4 ?) c- M. N' L5 M7 k將演算法實現成VERILOG,判斷影像的起始與資料位置進行演算法運算,再依照輸出與輸入的介面需求7 f# o0 @& T/ q$ A$ I
將資料讀入與輸出, X- R) r/ x6 w7 o7 K% f7 c- B  u
實務作法
; f! H( a( ^7 S. Y! m- D; D" Q+ r+ k1.確認進入與輸出實驗版的資料型態RGB?CCIR?
! L- W( t2 d4 `% d9 ^8 i* f3 z2.確認進入與輸出FPGA的資料型態RGB?CCIR?或是SD?# W" v% `: L. e% |+ B' _5 J- Y- a* k
3.進行FPGA資料介面編寫
/ \7 s2 @* q8 @- z5 p+ W9 \4.進行演算法編寫3 [# g1 O- G- ?0 U  ?" O- s* R* F
5.整合介面與演算法# D$ {/ S5 P6 J# Z5 B9 z
6.燒入FPGA
4 v  R; K- @1 ?) o, C! ]這樣才是整各流程
! K4 a2 B4 S6 U. B8 u
* M5 Q; [8 H9 V! d) r0 {. l[ 本帖最後由 kosenmagic 於 2008-12-16 11:31 AM 編輯 ]

評分

參與人數 1Chipcoin +3 收起 理由
masonchung + 3 回答詳細!

查看全部評分

6#
發表於 2008-12-18 22:26:27 | 只看該作者
DE2板子參考設計的輸入是使用ADI的chip,出來是CCIR656,source code是把656轉601,之後存到sdram,然後再抓出來做影像處理,最後丟到VGA或LCD,9 _6 g* b! D$ v9 k2 @
block Digram如下圖:' K9 X% H& M3 w
有任何問題,我們再來討論討論^__^

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x

評分

參與人數 1Chipcoin +3 收起 理由
masonchung + 3 分享是成長動能,懂得分享回饋是無限的!?

查看全部評分

7#
發表於 2008-12-24 18:39:27 | 只看該作者
挖...9 o. t) L* T  K& Z
各位大大的回答都很詳細...
5 P  a( K, @" ~. e讓我們這些新手很受用...+ t7 ?. q4 E- L% S# W. b1 o' r
不知道哪邊還可以找到更多DE2的介紹呢?
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-4-28 03:10 AM , Processed in 0.115006 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表