Tải bản đầy đủ (.pdf) (77 trang)

Luận văn thiết kế hệ thống xử lý video trên FPGA(CycloneII)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.45 MB, 77 trang )


iii

TÓM TẮT LUẬN VĂN


Luận văn này trình bày về thiết kế hệ thống xử lý ảnh Video trên FPGA(CycloneII) bao
gồm các thành phần: thu nhận và số hóa tín hiệu Video Analog, xử lý ảnh Video số, hiển thò
lên VGA. Cyclone II giao tiếp với bên ngoài thông qua KIT DE2 (Ngoài CycloneII, các thành
phần tích hợp trên KIT DE2 mà ta sẽ sử dụng là: chip mã hóa tín hiệu Video Analog
ADV7181B; SDRAM IS42S16400 để lưu trữ và xuất frame ảnh hợp lý; chip ADV7123 để
hiển thò ảnh lên màn hình). Quá trình thực hiện luận văn sẽ bao gồm các công đoạn:
Về cơ sở lý thuyết cần tìm hiểu:
 Cách thức cài đặt chế độ hoạt động và cấu trúc của tín hiệu số ngõ ra của ADV7181B.
 Nguyên tắc cơ bản về hoạt động của SDRAM.
 Các phương pháp và giải thuật xử lý ảnh.
 Cách thức hiển thò hình ảnh lên màn hình.
Thực hiện thiết kế lên CycloneII với phần mềm Quartus và Verilog HDL với các khối:
 Cài đặt chế độ hoạt động cho ADV 7181B thông qua giao thức I2C.
 Nhận biết và tách các dữ liệu cần thiết trong chuỗi byte do ADV7181B đưa ra.
 Lưu trữ rồi xử lý frame ảnh theo 1 số các phương pháp đã tìm hiểu.
 Xuất ảnh ra màn hình thông qua chip điều khiển quét màn hình ADV7123.
Xử lý ảnh là lónh vực rất rộng lớn và đang phát triển mạnh mẽ. Ta chỉ tìm hiểu và thực
hiện một số phương pháp cơ bản.

Chương 1: KIT DE2 của Altera
Trang 1

PHẦN I: GIỚI THIỆU TỔNG QUAN

CHƯƠNG 1: KIT DE2 CỦA ALTERA



1.1 SƠ LƯC
Trong đề tài luận văn, ta sẽ sử dụng phần mềm Quartus II để tổng hợp chương trình
sau đó dòch ra mã hex và lập trình hệ thống lên chip FPGA Cyclone II trên kit DE2 của
Altera thông qua JTAG USB.

Hình 1.1: Kit DE2
Kit DE2 có rất nhiều tính năng cho phép các nhà thiết kế thực hiện một khối lượng
lớn các hệ thống, mạch chức năng từ đơn giản đến phức tạp. Dưới đây là các tính năng
được cung cấp sẵn trên kit DE2:
 Altera Cyclone II 2C35 FPGA
 Altera Serial Configuration device - EPCS16
Chương 1: KIT DE2 của Altera
Trang 2
 USB Blaster dùng để lập trình hệ thống từ PC, hỗ trợ các chế độ JTAG cũng
như điều khiển trực tiếp khi sử dụng NIOS II
 512 – Kbyte SRAM
 8 – Mbyte SDRAM
 4 – Mbyte Flash memory
 Khe cắm SD Card
 4 phím nhấn PushButton KEY[3:0]
 18 Switch (cấp mức ‘0’ hay ‘1’)
 18 đèn LEDR và 9 đèn LEDG
 Có hai nguồn clock là 50 MHz và 27 MHz
 Chip giải mã âm thanh 24 bits với các jack cắm line-in, line-out và microphone
 VGA DAC (10-bit high-speed triple DACs) với cổng VGA
 TV Decoder (NTSC/PAL) với TV-in (Video-in)
 Cổng 10/100 Ethernet
 Bộ điều khiển USB host/slave
 RS – 232 với cổng kết nối 9 chân

 Cổng PS/2 giao tiếp với chuột và keyboard
 Cổng hồng ngoại
 40 chân để mở rộng
Khi tổng hợp chương trình rồi gắn chân cho hệ thống, ta chỉ cần khai báo chân đúng
theo tên của bảng chân trong file Excel DE2_pin_assignments đi kèm với đóa cài. Rồi
thực hiện File Menu >> Assignments >> Import Assignments >> Browser  đến file đó.
Chương trình Quartus II sẽ tự động gắn chân theo đúng bảng chân trên.
Trong đề tài, các thành phần của Kit DE2 mà ta sẽ sử dụng là Cyclone II 2C35
FPGA, cổngTV-IN (ADV7181B) để nhận dữ liệu Video, SDRAM để lưu trữ các frame
ảnh, cổng VGA (ADV7123) để truyền ảnh lên monitor. Altera Cyclone II 2C35 FPGA vốn
đã rất quen thuộc với sinh viên của bộ môn Điện Tử nên không đề cập lại nữa. Tiếp theo
ta tìm hiểu sơ lược hoạt động của ADV7181B, SDRAM.
Chương 1: KIT DE2 của Altera
Trang 3
1.2 CHIP MÃ HÓA TÍN HIỆU VIDEO ADV7181B:
1.2.1 CHỨC NĂNG VÀ DẠNG DỮ LIỆU NGÕ RA
Nguồn ảnh cần xử lý là tín hiệu analog video do DVD player xuất ra. Kết nối ngõ ra
TV-Out composite của DVD Player với cổng TV-In trên Kit DE2 thì bộ ADV7181B sẽ số
hóa tín hiệu này sang chuẩn ITU-RTBT 656 là chuỗi các frame ảnh. Mỗi điểm trong
frame ảnh thu về được biểu diễn dưới dạng I(x,y) trong đó x,y là tọa độ của pixel trên
frame và I là mức xám tương ứng của pixel đó. Như vậy 1 frame ảnh thu được sẽ được
biểu diễn dưới dạng một ma trận 2 chiều 720 x 525 với 720 là số pixel trên 1 hàng, 525 là
số hàng trong 1 frame.
chuẩn Video ITU – RBT 601:
Chuẩn ITU – R BT 601/656 đònh nghóa một thiết kế cho việc mã hoá đan xen một
khung bao gồm 525 (hoặc 625) line tín hiệu video tương tự thành dạng số, truyền tín
hiệu với xung clock 27Mhz. Một single horizontal line có cấu trúc:

EAV, BLANKING và SAV là các trường (field) phân biệt để đồng bộ dữ liệu được truyền.
EAV và SAV đều là các trường 4 byte :

-EAV: cho biết điểm kết thúc của Active Video Data trong line hiện hành cũng như
là điểm bắt đầu của line tiếp theo.
-SAV: báo hiệu điểm bắt đầu của Active Video Data trong line hiện hành.
FFh
00h
00h
XY

Byte thứ tư XY chứa thông tin về trường được truyền,tình trạng của khoảng trống
(field blanking) theo chiều dọc (Vertical) hoặc của dòng trống (line blanking) theo chiều
ngang (horizontal):

Chương 1: KIT DE2 của Altera
Trang 4
Bit
Symbol
Chức năng
7
1
Luôn ở mức 1
6
F
Field Bit: 0 => Filed1; 1 => Filed2
5
V
Vertical Blanking Status Bit:
-Lên mức cao khi ở vertical field blanking interval.
-Xuông mức thấp ở các trường hợp khác.
4
H

Horizontal Blanking Status bit:
-Nếu là trường SAV thì ở mức 0.
-Nếu là trường EAV thì ở mức 1.
3
P3
Protection bit 3
2
P2
Protection bit 2
1
P1
Protection bit 1
0
P0
Protection bit 0
Các Protection Bits thì dùng để kiểm tra và sửa lỗi phụ thuộc vào các bit F, V, H.
Nhưng khi nhận Video Stream ta có thể bỏ qua các bit này nên ta không xét đến.
Ý nghóa của các bit F và V là để đảm bảo sự đồng bộ các horizontal line trong một
frame theo chiều dọc:

Chương 1: KIT DE2 của Altera
Trang 5
Cách đặt giá trò các bit F, V theo các trường (Field 1 hoặc 2) và tính hiệu dụng
(Active or Blanking) sẽ được hiểu rõ hơn qua bảng mô tả một frame gồm 525 horizontal
line sau:
-Field1 (F=0): 262 line từ line 4 đến line 265; Field 2(F=1): 263 line từ line 266 đến line 3
-Active or Blanking: các Active video data và các Vertical Blanking Interval được sắp
xếp xen kẽ nhau:
Active portion(V = 0): Odd Field: 244 line từ 20 -> 263; Even Field: 243 line từ 283 -> 525;
Vertical Blanking Interval (V = 1): 38 line gồm 19 line từ 1 -> 19 và 19 line từ 266 -> 282;


Hình 1.2: Frame ảnh theo chuẩn ITU656
Chương 1: KIT DE2 của Altera
Trang 6
Một horizotal line tín hiệu sẽ gồm các thành phần sau:
Blanking: Trong suốt thời gian truyền tín hiệu Video, ở giữa các Active video signal
segments sẽ là các horizontal blanking interval. Giá trò của các byte trong trường này sẽ
phải phù hợp với cấp độ (levels) của các tín hiệu Cb, Cr và Y tương ứng theo quy tắc sau:
Cb = 80h; Y = 10h; Cr = 80h ta có chuỗi byte : 80h,10h,80h, . . . .80h,10h.
Tuỳ vào số line tín hiệu mà chuỗi này sẽ bao gồm 268 byte (khung 525 line) hoặc là
280 byte (khung 625 line)
Active Video Data: Có tất cả 1440 byte chứa đựng các thông tin về ảnh: 720 giá trò Y
(luminace-brightness); 360 giá trò Cr (red chrominace); 360 giá trò Cb (blue chromiance)
được sắp xếp theo từng nhóm cứ một Cb và Cr thì có 2 giá trò Y: CbYnCrYn+1 tạo thành
chuỗi: Cb0Y0Cr0Y1Cb1Y2Cr1Y3 Cb359Y718Cr359Y719.
Các trường SAV và EAV: mỗi trường dài 4 byte
Vậy trong hệ thống 525 line thì một Horizontal line sẽ bao gồm 1716 byte.

1.2.2 GIAO THỨC CÀI ĐẶT I2C
ADV7181B hỗ trợ một giao diện kết nối 2 dây tuần tự ‚a 2-wire serial interface‛
I2C. Hai ngõ vào : dữ liệu tuần tự SDA, xung clock tuần tự SCLK mang thông tin giữa
ADV7181B với bộ điều khiển hệ thống I2C. Mỗi thiết bò tớ(Slave) sẽ được nhận ra bởi
một đòa chỉ duy nhất.
Các chân I2C của ADV7181B cho phép người dùng cài đặt, cấu hình bộ mã hóa và
đọc ngược lại dữ liệu VBI (vertical blank interval) bắt được. ADV7181B có 4 đòa chỉ Slave
cho cả thao tác đọc và ghi phụ thuộc vào mức logic của chân ALSB. ALSB điều khiển bit
1 của đòa chỉ Slave ( Slave_address[1] ) bởi việc thay đổi chân này có thể điều khiển được
cả hai bộ ADV7181B mà không có sự xung đột vì trùng đòa chỉ Slave. Bit thấp nhất của
đòa chỉ Slave ( LSB hay là Slave_address[0] ) quyết đ̣nh thao tác ghi hay đọc: mức 1 đọc
và mức 0 thì ghi. đây ta chỉ sử dụng 1 bộ ADV7123, giao thức I2C chủ yếu dùng để nạp

dữ liệu cho các thanh ghi nên chọn đòa chỉ Slave cho chip mã hóa này là 0x40h từ bảng
giá trò đòa chỉ I2C Slave dưới đây:
Chương 1: KIT DE2 của Altera
Trang 7
I2C

Addres
s

for

ADV7181B

ALSB

R/
W

Slave

Ad
dress

0

0

1

1


0

1

0

1

0x40h = 0000’xxxx’0100’0000b
0x41h = 0000’xxxx’0100’0001b
0x42h = 0000’xxxx’0100’0010b
0x43h = 0000’xxxx’0100’0011b

Để điều khiển thiết bò trên Bus thì phải có một giao thức đặc biệt đi kèm. Đầu tiên
Master sẽ khởi động truyền dữ liệu bằng việc thiết lập điều kiện bắt đầu( SDA từ 1 xuống
0 trong khi SCLK vẫn ở mức cao ) ở đây ta gọi là START, nó ám chỉ rằng theo sau đó là
một luồng đòa chỉ hay dữ liệu. Các ngoại vi đáp trả lại START và dòch chuyển 8 bit tiếp
theo (7 bit đòa chỉ và 1 bit đọc/ghi ), các bít này được truyền từ bit cao(MSB) đến
thấp(LSB) . Các ngoại vi khi đã nhận ra các đòa chỉ được truyền thì đáp ứng bằng cách giữ
SDA = 0 trong toàn bộ chu kỳ thứ 9 của xung clock gọi là ACK. Các thiết bò khác thì sẽ rút
khỏi Bus tại điểm này và bảo toàn trạng thái IDE( khi cả SDA và SCLK đều ở mức cao để
cho các thiết bò theo dõi 2 line này, chờ START và đòa chỉ được truyền đúng ). Bit đọc/ghi
chỉ ra hướng của dữ liệu, LSB = 0/1 thì Master ghi/đọc thông tin vào/từ ngoại vi.
ADV7181B hoạt động như thiết bò Slave tiêu chuẩn trên Bus, chứa 196 đòa chỉ con(
Subaddress là độ lệch của đòa chỉ cần thao tác với đòa chỉ thiết bò) để cho phép truy cập
các thanh ghi nội. Điều đó giải thích rằng byte đầu tiên là đòa chỉ của thiết bò và byte thứ
hai là đòa chỉ con đầu tiên. Các đòa chỉ con này tự động tăng dần cho phép truy đọc/ghi ở
đòa chỉ con bắt đầu. Sự truyền dữ liệu thì luôn bò ngắt bởi điều kiện dừng (STOP). Người
dùng có thể truy cập tới bất cứ duy nhất 1 thanh ghi ở đòa chỉ con trên cơ sở 1-1 khi không

có sự cập nhật toàn bộ các thanh ghi. Ở đề tài này ta không sử dụng chế độ cập nhật toàn
bộ mà chỉ truy cập vào các thanh ghi cần thiết ở các đòa chỉ con trên cơ sở 1-1.
START và STOP có thể xuất hiện ở bất kì đâu trong sự truyền dữ liệu, nếu các điều
kiện này được khẳng đònh ở ngoài chuỗi liên tục với các thao tác đọc và ghi thông thường,
thì nó tác động làm bus trở về trạng thái IDE. Nếu đòa chỉ người dùng phát ra không phù
hợp( invalid ) thì ADV7181B sẽ không gửi xác nhận ACK và trở về trạng thái IDE.
Nếu các đòa chỉ con tự động tăng dần rồi vượt quá giới hạn đòa chỉ con cao nhất:
Chương 1: KIT DE2 của Altera
Trang 8
 Nếu đang đọc thì những giá trò chứa đựng trong thanh ghi có đòa chỉ con cao nhất sẽ
được tiếp tục đọc cho đến khi Master phát 1 NACK (SDA không bò đưa xuống mức thấp
trong toàn bộ chu kỳ thứ 9) để chỉ rằng việc đọc kết thúc.
 Nếu đang ghi thì những giá trò của byte không phù hợp sẽ không được load


Hình 1.3: Truyền dữ liệu trên Bus và chuỗi đọc và ghi tuần tự với giao thức I2C
 Truy cập các thanh ghi: MPU có thể viết hoặc đọc các thanh ghi ngoại trừ các ở
đòa chỉ con, chúng chỉ được ghi, chúng chỉ ra các thanh ghi mà tác vụ đọc hay ghi tiếp theo
truy cập đến. Mọi sự giao tiếp với phần này thông qua Bus START với một sự truy cập
các thanh ghi này. Các thao tác ghi hay đọc sẽ được thực hiện từ/đến đòa chỉ đích, rồi tăng
lên đòa chỉ tiếp theo đến khi một lệnh STOP trên Bus được thực thi.
 Lập trình các thanh ghi: cấu hình cho từng thanh ghi, thanh ghi giao tiếp gồm 8 bít
chỉ được ghi. Sau khi thanh ghi này được truy cập trên bus và một thao tác đọc/ghi được
lựa chọn, các đòa chỉ con được cài đặt chỉ ra các thanh ghi mà các tác vụ sẽ đặt tới.
 Chọn lựa thanh ghi: (SR đến SR0) những bít này được cài đặt để chỉ ra đòa chỉ bắt
đầu được yêu cầu.
 Chuỗi I2C : được sử dụng khi cần các thông số vượt quá 8 bit, vì vậy nó phải được
phân phối trên ít nhất là 2 thanh ghi của I2C:
Khi một thông số được thay đổi bởi 2 lần ghi thì nó có thể giữ giá trò không phù hợp
(invalid) trong khoảng thời gian lần đầu và lần cuối I2C được hoàn thành, có nghóa là các

bit đầu của nó có thể mang giá trò mới trong khi các bit còn lại vẫn giữ giá trò cũ.
Chương 1: KIT DE2 của Altera
Trang 9
Để tránh sai sót này chuỗi I
2
C sẽ giữ các bit giá trò cập nhật của các thông số trong
bộ nhớ cục bộ, và các bit của chuỗi I
2
C được cập nhật với nhau một lần khi tác vụ ghi vào
thanh ghi cuối cùng hoàn thành.
Tác vụ hợp lý trên chuỗi I
2
C sẽ dựa trên các cơ sở sau: Các thanh ghi dành cho chuỗi
I
2
C sẽ được ghi theo thứ tự tăng dần đòa chỉ các thanh ghi. Ví dụ: HSB[10:0] thì ghi lên
0x34 trước rồi ngay lập tức ghi thêm vào 0x35.
1.2.3 CÀI ĐẶT CẤU HÌNH HOẠT ĐỘNG :
Dưới đây là bảng mô tả các thanh ghi và các giá trò cần được cài đặt để phát hiện
chuẩn Video Analog NTSC 525 line ở ngõ vào và mã hóa sang chuẩn ITU656 ở ngõ ra:
Bảng 1.1: Cài đặt giá trò cho các thanh ghi của ADV7181 tương ứng
sudadd
Thanh ghi
Giá trò cài đặt
Chú giải
0x00h
Input
Control
00h: để chọn ngõ vào là dạng hỗn
hợp (Composite) và có thể tự

động phát hiện ra 1 trong các
chuẩn: SECAM, PAL( B/G/H/I/D
), NTSC ( không có pedestal )
50h:để phát hiện chuẩn NTSC-M
-4 bit thấp dùng để chọn
đònh dạng ngõ vào.
-4 bit cao dùng để chọn chế
độ khi mà ngõ vào là các
chuẩn Video (PAL, NTSC,
SECAM ) thì ADV7818 có
thể tự phát hiện.
0x04h
Extended
Output
Control
02h: cho phép bộ giải mã kết nối
trực tiếp với bộ mã hóa
-bit 1 quyết đònh bộ giải mã
có kết nối trực tiếp với bộ
mãù hóa hay không.
0x08h
Contrast
Register
điều chỉnh độ tương phản nhờ vào
độ lợi của thành phần Luma
-Tùy vào giá trò thanh ghi
này mà tính độ lợi thành
phần Luma
0x0Ah
Brightnes

Register
Điều chỉnh độ sáng của tín hiệu
Video
-Tùy vào giá trò thanh ghi
này Để tính độ sáng
Chương 1: KIT DE2 của Altera
Trang 10
0x0Eh
ADI
Control
Bit 5 ở mức 0 thì truy cập bản đồ
thanh ghi của người dùng, ở mức 1
truy cập bản đồ thanh ghi ngắt
Được cài đặt tùy ý trừ bit 5.
Bit5 dùng để cho phép người
dùng truy cập bản đồ ngắt
0x10h
Status
Register1.
ReadOnly
Ta đặt bit 4 lên 1 để báo rằng
chuẩn NTSC4-4-3 được phát hiện
4 bit thấp cung cấp thông tin
về trạng thái nội của bộ mã
hóa, các bit 4, 5, 6 báo cáo
chuẩn Video được phát hiện
0x11h
INDENT
ReadOnly
ADV7818B thì dặt giá trò 13h

Cung cấp sự nhận diện trong
sự xem xét lại các thành
phần
0x15h
Digital
Clamp
Control 1
00h đặt chế độ đấu nối chậm
Slow
Bộ đònh thì thời gian đấu nối
số (digital clamp) quyết đònh
thời hằng của một bộ đấu
nối tốt
0x17h
Shaping
Filter
Control
41h: bit 6 = 1 thì chọn bộ lọc SH1
đối với thành phần chrom, bit 1 =
1 và các bit 4,3,2,1 = 0 thì chế độ
tự động chọn bộ lọc cho thành
phần luma: gai xung thấp cho
nguồn tín hiệu kém chất lượng
hoặc băng rộng cho nguồn chất
lượng cao
Cho phép lựa chọn 1 dãy
các bộ lọc thấp hay lọc gai
xung thấp hoặc bộ mã hóa
sẽ chọn một bộ lọc tối ưu
tùy theo chất lượng nguồn

tín hiệu đưa vào
0x2Bh
Misc Gain
Control

00h: Cập nhật cho peak white trên
từng line video và ở chế độ màu
Bit 0 xác đònh chu kỳ cập
nhật cho peak white. Bit7
cài đặt chế độ màu hay
trắng đen.
0x2Ch
AGCMod
e
Control
8Ch: cố đònh độ lợi màu và độ
sáng (phương pháp thủ công)
thông qua các chuỗi CMG[11:0]
(màu ) và LMG[11:0] (độ sáng).
2 bit cuối chọn chế độ cho
độ lợi màu. Các bit 6,5,4 cài
đặt chế độ để điều khiển độ
lợi cho độ sáng. Bit 7,3,2
luôn đặt ở mức 1.
Chương 1: KIT DE2 của Altera
Trang 11
0x2Dh
Chroma
Gain
Control 1

F8h: 2 bit 5,4 luôn đặt ở mức 1.
Hai bit đầu = 1 dùng trong chế độ
thích nghi tốc độ AGC
4 bit cuối CMG[11:8] lập
trình độ lợi màu mong
muốn. Bit 7,6 là CATG[1:0]
đònh thì cho độ lợi màu tự
động theo dõi tốc đôï AGC
0x2Eh
Chroma
Gain
Control 2
Tùy vào độ lợi màu cần có mà đặt
giá trò. CMG[11:0] =750d thì độ
lợi =1 với hệ NTSC. CMG[11:0] =
741d thì độ lợi = 1 với hệ PAL
Tương ứng với CMG[7:0] để
kết hợp với 4 bit cuối của
Chroma Gain Control 1 để
tạo CMG[11:0] xác đònh độ
lợi màu
0x2Fh
Luma
Gain
Control 1
F4h: 2 bit 5,4 luôn đặt ở mức 1.
Hai bit đầu = 1 dùng trong chế độ
thích nghi tốc độ AGC
4 bit cuối LMG[11:8] lập
trình độ lợi sáng mong

muốn. Bit 7,6 là LATG[1:0]
đònh thì cho độ lợi màu tự
động theo dõi tốc đôï AGC
0x30h
Luma
Gain
Control 2
Tùy vào độ lợi màu cần có mà đặt
giá trò.LMG[11:0]=1234d thì độ
lợi = 1 với hệ NTSC. CMG[11:0]
=1266d thì độ lợi = 1 với hệ PAL
Ứng với LMG[7:0] kết hợp
với 4bit cuối của Luma Gain
Control1 tạo LMG[11:0] xác
đònh độ lợi màu
0x31h
VS and
FIELD
Control 1
12h:bit3 = 0 bắt đầu 1 line tương
quan với HSE vàbit5 = 1 thì đònh
vò VS/Field thủ công qua các
thanh ghi 0x32,0x33,0xE5–0xEA
Bit3 quyết đònh việc bắt đầu
line tương quan vơi HSE hay
HSB Bit4 chọn chế độ của
SAV/EAV
0x32h
VSync
Field

Control 2
81h:Bit6 = 0 VS lên mức cao giữa
line thuộc Even Field. Bit7=1 VS
chuyển trạng thái ở đầu line thuộc
Old Field. Bit0=1 là mặc đònh
Bit7,6 quy đònh VS đổi trạng
thái (bắt đầu 1 line) hay lên
mức cao (ở giữa line) thuộc
Even hay Old Field
0x33h
VSync
Field
Control 3
84h:Bit6=0 VS xuống mức thấp
giữa line thuộc Even Field. Bit7=1
VS đổi trạng thái ở đầu line thuộc
Odd Field. Bit2=1 là mặc đònh.
Bit 7,6 là VHESE,VHESO
quy đònh VS đổi trạng thái
(bắt đầu 1 line) hay lên mức
cao (ở giữa line) thuộc Even
hay Odd Field
Chương 1: KIT DE2 của Altera
Trang 12
0x37h
Polarity
A0h: VS và HS tích cực mức thấp
và Field tích cực mức cao. LLC1
đảo ngược cực tính so với sơ đồø
đònh thì.

Bit 6,4,2 luôn cài ở mức 0.
Bit 3,5,7 xác đònh mức tích
cực của Field,VS,HS. Bit1
xác đònh LLC1 có đảo cực
tính hay không
0x3Ah

16h: cho phép Power Down trên
ADC2, ADC1. ADC0 hoạt động
bình thường. Bit4 mặc đònh là 1.
Bit 1,2,3 ở mức 1 cho phép
chế độ Power-Down tương
ứng trên các bộ ADC2,
ADC1, ADC0
0x50h
CTI DNR
Control 4
00h: như vậy ta coi như không có
các xung nhiễu.
04h,20h: ( cài đặt theo khuyến
nghò ) để tính bù phần xung nhiễu.

DNR_TH[7:0]: Đặc tả số
cạnh xung tối đa được hiểu
là nhiễu nên sẽ coi là trống.
0x51h
Lock
Count
Bit6 là SRLS chọn tín hiệu khóa
thô(sự tràn Field với các thông tin

chiều dọc hay xét từng hàng line-
to-line )
00h: số line trong tình trạng khóa
trước khóa là 1, trước mất khóa là
1. Chọn tín hiệu khóa thô là tràn
Field, khóa trạng thái chỉ nhờ vào
khóa hàng
-3 bit cuối là CIL [2:0] quy
đònh số line còn lại trong
tình trạng khóa trước khi chỉ
trạng thái khóa
-Bit5,4,3 là COL[2:0] quy
đònh số line còn lại ngoài
tình trạng khóa trước khi chỉ
trạng thái mất khóa
-Bit7:khóa trạng thái chỉ nhờ
vào khóa hàng hay cả khóa
hàng và cả sóng mang phụ
0xC3h
ADC
SWITCH

1

05h: ADC1 không kết nối, ADC0
nối với AIN6 (trên DE2 thì cổng
TVin chỉ nối với chân AIN6 của
ADV7181)
Phải đặt
SE

TA
DC_
sw
_
man_en
=
1 ở
thanh ghi 0xC4h.

4 bit thấp là ADC0_SW[3:0]
, 4 bit cao là ADC1_SW[3:0]
để điều khiển việc chọn thủ
công cho ADC0 và ADC1
Chương 1: KIT DE2 của Altera
Trang 13
0xC4h
ADC
SWITCH

2

80h: ADC2 không được kết nối.
Bit7 = 1 thì mới cho phép các cài
đặt thủ công ở thanh ghi 0xC3h,
0xC4h
-4 bit thấp là
ADC2
_SW
[
3:0]

-Bit7 là
SE
TADC_
sw
_
man_en

0xE4h
SD
Saturation
Cr
3Eh: tăng độ lợi màu vơi hệ số
khác 0 db
SD_SAT_CB [7:0] điều
chỉnh sự bãùo hòa của bức
hình bằng việc tăng giảm
tác động màu
0xE5h
NTSC V Bit
Begin
80h: Bit7 là NVBEGDELO lên 1 :
làm cho việc bit V lên mức cao bò
trễ 1 line thuộc Odd Field.
5 bit cuối là NVBEG[4:0]
chỉ ra số line sau khi lcount
cùng tác động để đặt V lên
cao.
0xE6h
NTSC V Bit
End

03h: Bit7,bit6 là NVENDDELO
và NVENDDELE ở mức 0 nên
không làm trễ
5 bit cuối là NVEND[4:0]
chỉ ra số line sau khi lcount
cùng tác động để đưa V
xuống thấp .
0xE7h
NTSC F Bit
Toggle
85h: Bit7 là NVBEGDELO lên 1 :
làm cho việc chuyển đổi của bit F
bò trễ 1 line thuộc Odd Field.
5 bit cuối là NFTOG[4:0] ( =
00011 thì mặc đònh) chỉ ra số
line sau khi lcount cùng tác
động để chốt tín hiệu F .
0xEAh
PAL F Bit
Toggle
0Fh: không tạo trễ. PAL mặc đònh
thì PFTOG[4:0] = 00011
5 bit cuối là PFTOG[4:0] chỉ
ra số line sau khi lcount
cùng tác động để chốt tín
hiệu F .
Hai thanh ghi ở đòa chỉ 03h và 8Fh được giữ nguyên như mặc đònh của nhàsản xuất
để cho ra đònh dạng video ITU656 8 bit trên các chân P8 đến P15 của Pixel Port đồng thời
tần số clock đưa ra LLC là 27MHz.
Tại các đòa chỉ 00h, 0Eh, 10h, 11h, 3Ah, C3h và C4h là các thanh ghi cần được nạp

giá trò chính xác ở những bit nhất đònh, số còn lại được cài đặt theo khuyến nghò của nhà
sản xuất. Đồng thời tại đòa chỉ 0037h ta đặt chế độ đảo ngược tính của các tín hiệu VS,
HS, FIELD so với giản đồ đònh thì. Khi đó dạng sóng H, F, V ngõ ra có dạng :
Chương 1: KIT DE2 của Altera
Trang 14

Hình 1.4: Dạng sóng do ADV7181B xuất ra với cấu hình hoạt động đề ra.
Tín hiệu V không những chỉ là tín hiệu đồng bộ mà còn cho biết trong các khoảng từ
line 1 đến line 9 và từ line 264 đến line 272 thì bit V tương ứng trong trường SAV ở mức 1,
chỉ ra rằng đó là các Line trống (Blanking). Đây là điểm khác biệt so với frame ảnh theo
chuẩn ITU656 ở Hình 2 mà ta cần chú ý khi chọn dữ liệu để xử lý sau này.







Chương 1: Kit DE2 của Altera
Trang 15
1.3 SDRAM IS42S16400
SDRAM IS42S16400 có tất cả 67180864 bit SDRAM được tổ chức thành 4 dải
(BANK) nhớ, mỗi dải có dung lượng 1024576 từ (Words) 16 bit với tốc độ truyền dữ liệu
có thể lên đến 133MHz.
1.3.1 NGUYÊN TẮC HOẠT ĐỘNG
Thực hiện việc truyền dữ liệu qua các chân đòa chỉ và dữ liệu dưới sự chi phối của
các chân diều khiển:
 CKE Cho phép xung clock. Khi tín hiệu này ở mức thấp, chíp xử lý giống như là
xung clock hoàn toàn bò dừng lại.
 /CS Lựa chọn Chip: Ở mức cao, thì bỏ qua tất cả các đầu vào khác (ngoại trừ

CKE), và hoạt động như một lệnh NOP nhận được.
 DQM Mặt nạ dữ liệu: Khi cao, những tín hiệu này khống chế dữ liệu vào/ra. Khi đi
kèm với sự viết, dữ liệu không thật sự viết vào. Khi dữ liệu được giữ ở mức trong 2 chu kỳ
trước một chu kỳ đọc, việc đọc không được đưa ra từ chíp. Trên một chíp nhớ x16 hay
DIMM, với 1 từ 8 bit thì có một hàng DQM.
 /RAS Row Address Strobe là bit điều khiển cho qua đòa chỉ hàng
 /CAS Column Address Strobe bit điều khiển cho qua đòa chỉ cột
 /WE Write enable cho phép ghi
Các tín hiệu /RAS, /CAS, /WE dùng để lựa chọn 1 trong 8 lệnh. Nói chung thì dùng
để phân biệt các lệnh đọc, ghi.
SDRAM bên trong được chia thành trong 2 hay 4 dải (Bank) dữ liệu nội độc lập bên
trong. Một hoặc hai đòa chỉ vào của dải (Bank) BA0 và BA1 sẽ lựa chọn Bank mà lệnh tác
động đến.
Phần lớn các lệnh đều sử dụng đòa chỉ được đưa vào ngõ vào đòa chỉ. Nhưng có một
số lệnh lại không sử dụng chúng, hay chỉ biểu diễn một đòa chỉ cột,vì vậy ta sử dụng A[10]
để lựa chọn những phương án.
Chương 1: Kit DE2 của Altera
Trang 16
Bảng 1.2: Các chế độ truy cập SDRAM
/CS
/RAS
/CAS
/WE
Ban
A10
An
Lệnh
H
X
X

X
X
X
X
ức chế các lệnh khác
L
H
H
H
X
X
X
Không làm gì cả(NOP)
L
H
H
L
X
X
X
Dừng (hủy) truyền khối: dừng lệnh đọc
khối hay ghi khối khi đang thực hiện.
L
H
L
H
Bank
L
Column
Read: Đọc khối dữ liệu từ hàng kích hoạt

hiện hành.
L
H
L
H
Bank
H
Column
Đọc với Precharge ( nạp lại ) tự động: khi
thực hiên xong thì Precharge ( tức là đóng
hàng lại).
L
H
L
L
Bank
L
Column
Write: ghi khối dữ liệu từ hàng kích hoạt
hiện hành.
L
H
L
L
Bank
H
Column
Ghi với sự nạp lại tự động: khi thực hiên
xong thì nạp lại (Precharge) tức là đóng
hàng lại.

L
L
H
H
Bank
Row
Active(kích hoạt): mở một hàng với lệnh
Read và Write.
L
L
H
L
Bank
L
X
Precharge( nạp lại): Ngưng hoạt động hàng
hiện hành của bank (dải) được chọn
L
L
H
L
X
H
X
Precharge all (nạp lại toàn bộ): Ngưng hoạt
động hàng hiện hành của tất cả các bank
(dải).
L
L
L

H
X
X
X
Auto refresh (tự động làm tươi): làm tươi 1
hàng của từng bank,sử dụng bộ đếm nội.
Tất cả các dải phải được nạp lại.
L
L
L
L
0 0
Mode
Load mode register (chế độ nạp các thanh
ghi): A[9:0] được nạp để cấu hình chip
DRAM.
Trong đó quan trọng nhất là ngầm đònh
CAS (2 hoặc 3 chu kỳ) và chiều dài khối
(1, 2, 4 hoặc 8 chu kỳ)
Chương 1: Kit DE2 của Altera
Trang 17
1.3.2 SỰ TƯƠNG TÁC CÁC TÍN HIỆU ĐIỀU KHIỂN SDRAM
Không có lệnh nào luôn được cho phép
o Lệnh chế độ nạp các thanh ghi (load mode register command) yêu cầu tất cả các
dải (Bank) ở trạng thái IDE, và phải trì hoãn về sau cho sự thay đổi để tác động.
o Lệnh tự động làm tươi (auto refresh command) thì yêu cầu tất cả các dải (Bank) ở
trạng thái IDE, và mất 1 khoảng thời gian làm tươi để đưa Chip về trạng thái IDE: thường
là t
rcd
+ t

rp.

o Chỉ có những lệnh khác thì cho phép trên một Bank IDE là các lệnh kích hoạt.
Cần phải mất t
rcd
trước khi hàng được mở hoàn toàn và chấp nhận một lệnh đọc hay ghi.
o Khi một dải (Bank) được mở thì có 4 lệnh được cho phép: đọc, ghi, kết thúc
truyền khối (Burst terminal), nạp lại (precharge). Lệnh đọc, ghi bắt đầu truyền khối và có
thể bò ngắt bởi những ngắt sau:
-Ngắt một đọc khối dữ liệu:
Sau một lệnh đọc thì bất cứ lúc nào cũng có thể có một trong các lệnh: đọc, kết thúc
truyền khối, hoặc là nạp được phát ra. Và sẽ ngắt đọc khối này nếu có một ngầm đònh
CAS được cấu hình. Nếu có 1 lệnh đọc ở thời điểm 0, 1 lệnh đọc khác ở chu kỳ 2, ngầm
đònh CAS ở chu kỳ 3 thì lệnh đọc đầu tiên sẽ truyền khối dữ liệu ra ngoài ở chu kỳ 3 và 4,
và kết quả của lệnh đọc thứ 2 sẽ bắt đầu xuất hiện ở chu kỳ 5.
Nếu lệnh ở chu kỳ 2 là kết thúc truyền khối hoặc là nạp lại Bank kích hoạt thì không
có dữ liệu ra ở chu kỳ 5.
Mặc dù việc ngắt lệnh đọc có thể xuất hiện ở một Bank bất kỳ , nhưng lệnh nạp lại
chỉ ngắt việc đọc khối nếu nó tác động trên cùng một Bank hoặc tất cả các Bank, nếu
lệnh này hướng đến một Bank khác thì việc đọc khối vẫn tiếp tục.
Sự ngắt đọc tạo ra bởi một lệnh ghi thì cũng có thể nhung sẽ khó khăn hơn. Thực
hiên điều này nhờ vào một tìn hiệu DQM để khống chế ngõ ra của SDRAM , vì vậy trong
khoảng thời gian này,chíp điều khiển bộ nhớ có thể lái dữ liệu đi qua chân DQ để ghi vào
SDRAM. Vì tác động của DQM trên lệnh đọc thì bò trì hoãn 2 chu kỳ trong khi đối với
Chương 1: Kit DE2 của Altera
Trang 18
lênh đọc thì ngay lập tức, nên DQM phải lên mức cao (raised) sớm hơn 2 chu kỳ trước khi
có lệnh ghi.
Để thực hiện điều này trong 2 chu kỳ thì yêu cầu đònh vò thời điểm SDRAM tắt ngõ
ra tai 1 cạnh lên xung Clock và thời điểm dữ liệu được cung cấp (cho lệnh ghi ) như ngõ

vào của SDRAM ở cạnh tiếp theo của Clock.
-Một ngắt ghi khối dữ liệu (áp dụng cho cả trường hợp lệnh đọc có tự động nạp lại):
Bất kỳ lệnh đọc, ghi, hay kết thúc truyền tới một Bank bất kỳ sẽ kết thúc (dừng)
việc ghi khối ngay lập tức, dữ liệu trên chân DQ khi lệnh thứ 2 được phát thì chỉ do lệnh
này sử dụng.
Ngắt ghi khối với lệnh precharge (đến cung một Bank) thì khá phức tạp. Đó là thời
gian viết nhỏ nhất, t
wr
phải được lướt qua giữa tác vụ ghi sau cùng tới 1 Bank (chu kỳ
không bò che (unmasked) cuối cùng của ghi khối) với lệnh precharge kế tiếp, vì vậy một
ghi khối sẽ bò dừng (hủy) bởi lệnh tích nạp (pre-charge) nếu có đủ chu kỳ kéo dài được
che đi (dùng DQM) để tạo t
wr
cần thìết. Một lệnh ghi với sự tích nạp tự động chứa đựng
một trì hoãn tự động.
-Ngắt một lênh tích nạp tự động:
Việc xử lý sự gián đoạn của thao tác đọc, ghi với chế độ tích nạp tự động là một đặc
tính lựa chọn của SDRAM, và được hỗ trợ rất nhiều. Nếu được sử dụng, sự tích nạp (sau
khi một sự đọc) hay thời gian chờ t
wr
theo sau bởi sự tích nạp (sau khi đọc) bắt đầu cùng
một chu kỳ như một lệnh ngắt.
-Sắp xếp truyền khối SDRAM:
Một bộ vi xử lý hiện đại có bộ đệm nói chung sẽ truy nhập bộ nhớ trong những đơn
vò của line bộ đệm. Ví dụ để truyền 64byte, line bộ đệm yêu cầu 8 sự truy cập liên tiếp tới
một DIMM(dual in-line memory module: module nhớ có hai hàng chân) 64bit, mà toàn bộ
có thể được kích khởi bởi một lệnh đơn đọc hay ghi tùy vào sự cấu hình các chíp SDRAM
Sự truy cập line đệm điển hình được kích khởi bởi một sự đọc từ một đòa chỉ đặc
biệt, và SDRAM cho phép " từ có tính chất quyết đònh " của line đệm sẽ được truyền đầu
Chương 1: Kit DE2 của Altera

Trang 19
tiên. ("từ " ở đây có nghóa là chiều rộng (của) chíp SDRAM hay DIMM, 64 bít với một
DIMM tiêu biểu.).
Chíp SDRAM hỗ trợ hai giao thức để sắp xếp các từ còn lại trong line đệm:
+ Chế độ truyền khối đan xen: làm cho các tính toán của con người thêm phức tạp
nhưng lại dễ dàng tổng hợp phần cứng hơn và được ưu tiên với các bộ vi xử lý Intel. Ta
không sử dụng kiểu truyền này.
+ Chế độ truyền khối tuần tự: những từ trễ hơn được truy cập trong việc tăng dần đòa
chỉ, khi kết thúc thì quay trở lại điểm bắt đầu khối. Chẳng hạn, với một tuyền khối có
chiều dài là 4, và đòa chỉ cột được yêu cầu là 5, những từ sẽ truy cập theo thứ tự 5-6-7-4.
Nếu chiều dài truyền khối là 8, thứ tự truy cập là 5-6-7-0-1-2-3-4. Điều này được thực
hiện bởi việc thêm một bộ đếm đòa chỉ cột, và bỏ qua số nhớ khi đi hết khối.
Ta có thể lựa chọn chiều dài khối và kiểu truy cập khối bằng cách sử dụng chế độ
thanh ghi được mô tả phần tiếp theo
-Chế độ thanh ghi của SDRAM:
Tốc độ dữ liệu đơn SDRAM có một chế độ thanh ghi 10 bít đơn lập trình được. Sau
đó chuẩn SDRAM tốc độ dữ liệu kép SDRAM bổ sung thêm chế độ thanh ghi, đònh đòa chỉ
sử dụng những chân đòa chỉ Bank. Với SDR SDRAM, chân đòa chỉ Bank và đòa chỉ hàng
A[10] và cao hơn thì được lờ đi, nhưng phải là 0 trong khi ở chế độ ghi vào thanh ghi.
Trong chu kỳ của chế độ thanh ghi thì các giá trò nạp vào M[9:0] chính là các bit đòa chỉ.
 M[9] chế độ ghi từng khối, ở mức 0 thì ghi sử dụng chế độ và chiều dài truyền khối
ở chế độ đọc, ở mức 1 thì tất cả các ghi không phải là truyền khối(đònh vò đơn)
 M[8:7] chế độ vận hành, muốn ở chế độ lưu trữ thì đặt giá trò 00.
 M[6:4] ngầm đònh CAS chỉ với các giá trò hợp lệ là 010 (CL2) và 011 (CL3). Chỉ ra
số chu kỳ giữa lệnh đọc và dữ liệu được gửi ra từ Chip. Chip sẽ hoàn thành một giới hạn
cơ bản trong nanô-giây dựa trên giá trò này; khi khởi tạo, bộ điều khiển bộ nhớ phải sử
dụng kiến thức của nó về tần số xung Clock và dòch giới hạn kia thành những chu trình.
 M[3] kiểu truy cập các từ trong khối : 0 thì truy cập tuần tự, 1 thì truy cập đan xen.
Chương 1: Kit DE2 của Altera
Trang 20

 M[2:0]: chiều dài khối: giá trò 000, 001, 010 và 011 chỉ ra kích thước khối tương
ứng là 1, 2, 4 hay 8 từ. Mỗi đọc ( và viết, nếu m[9] là 0) sẽ thực hiện nhiều sự truy cập, trừ
phi được gián đoạn bởi một sự dừng (hủy) truyền khối hay các lệnh khác. Giá trò 111 đặc
tả khối với đầy đủ hàng (full-row Burst hoặc còn gọi là full page Burst). Sự truyền khối
với đầy đủ hàng chỉ được cho phép với kiểu tuần tự. Đối với SDRAM IS42S16400 thì
chiều dài của 1 khối ở chế độ full page Burst là 256 từ. Sự truyền khối thì tiếp tục cho
đến khi có ngắt
-Làm tươi tự động:
Dùng để làm tươi lại Chip ram nhờ vào sự mở và đóng ( kích hoạt và tích nạp ) từng
hàng trong từng Bank. Tuy nhiên, để đơn giản hóa chíp điều khiển bộ nhớ, Chip SDRAM
hỗ trợ lệnh tự động làm tươi, tức là đồng thời thực hiện thao tác này tới một hàng trong
từng Bank. SDRAM cũng duy trì một bộ đếm nội được lặp lại trên toàn bộ các hàng có
thể. Chip điều khiển bộ nhớ thì đơn giản phải phát ra đủ số lượng các lệnh làm tươi tự
động (1 lệnh đối với 1 hàng ) với mỗi khoảng làm tươi (một giá trò chung là t
ref
= 64 ms).
Tất cả các Bank phải ở trạng thái IDE khi lệnh được phát.
-Chế độ Lower Power:
Như đã đề cập, ngõ vào cho phép xung Clock (CKE) có thể được dùng để dừng xung
Clock tới SDRAM. Giá trò ngõ vào CKE được xét tại từng cạnh lên của xung Clock, và
nếu ở mức thấp, thì mọi cạnh lên của xung Clock tiếp theo sẽ bò bỏ qua mọi mục đích
khác so với việc kiểm tra CKE.
Nếu CKE xuống thấp trong khi SDRAM đang thực hiện tác vụ, thì nó đơn giản chỉ là
‚đóng băng lại‛ tại chỗ cho đến khi CKE lên mức cao.
Nếu SDRAM ở trạng thái IDE ( tất cả các Bank được tích nạp , không có lệnh nào
đang hoạt động) khi CKE xuống thấp, SDRAM tự động chọn chế độ power-down(tiết
kiệm năng lượng), giữ năng lượng ở cực tiểu cho tiểu khi có cạnh lên của CKE. Khoảng
này thì không được dài hơn giá trò tối đa khoảng làm tươi t
ref
, nếu không những gì bọ nhỡ

chứa đựng sẽ bò mất. Đây là phương pháp để dừng toàn bộ xung Clock trong khoảng thời
gian này để tiết kiệm năng lượng.
Chương 1: Kit DE2 của Altera
Trang 21
Cuối cùng, nếu CKE ở mức thấp vào lúc một lệnh làm tươi tự động được gửi đến
SDRAM, SDRAM chọn chế độ tự làm tươi ( seft-refresh mode). Tương tự Power Down,
nhưng SDRAM dùng một timer nội để phát ra các chu kỳ làm tươi nội khi cần thìết. Trong
thời gian này thì dừng xung Clock. Chế độ tự làm tươi tiêu thụ ít năng lương hơn so với
chế độ Power Down,nhưng vẫn cho phép bộ điều khiển bộ nhớ disable toàn bộ.


Chương 2: Lý thuyết Xử lý ảnh
Trang 22

CHƯƠNG 2 : LÝ THUYẾT XỬ LÝ ẢNH

2.1 GIỚI THIỆU
Xử lý ảnh số có nhiều ứng dụng thực tế. Một trong những ứng dụng sớm nhất là vào
năm 1964 đã sử dụng máy tính xử lý thành công ảnh chụp mặt trăng do vệ tinh gửi về. Hệ
thống chụp hình gắn trên vệ tinh thì bò hạn chế về kích thước và trọng lượng, do đó ảnh
nhận được thường bò mờ, méo hình học và nhiễu nền.
Các phương pháp xử lý ảnh bắt nguồn từ hai ứng dụng:
 Nâng cao chất lượng thông tin hình ảnh đối với mắt người.
 Xử lý số liệu cho máy tự động.
Từ đó đến nay, phạm vi xử lý ảnh lớn mạnh không ngừng và được ứng dụng trong
hầu hết các lónh vực (truyền ảnh, truyền chữ, truyền hình, nhận dạng chữ viết và vân tay,
máy cắt lớp trong y học, viễn thám, quân sự, nội vụ, nghiên cứu khoa học, …). Ta có thể
dùng xử lý ảnh để nén dữ liệu ảnh nhằm tiết kiệm dung lượng bộ nhớ và tận dụng hiệu
quả kênh truyền.
Xử lý ảnh số có thể chia làm bốn lónh vực, tuỳ thuộc vào loại công việc. Đó là cải

thiện ảnh, phục hồi ảnh, mã hoá ảnh, và lý giải nội dung (understanding) ảnh.
Cải thiện: nâng cao độ tương phản, lọc nhiễu, làm trơn ảnh để người xem, như trong
truyền hình, chuẩn đoán y học, phân tích bề mặt trong viễn thám, thiên văn hoặc là được
xử lý trước để trợ giúp hoạt động của máy móc, như trong nhận dạng đối tượng bởi máy
móc.
Phục hồi: ảnh bò xuống cấp trong một số trường hợp, chẳng hạn như bò nhoè,và mục
đích là để giảm bớt hoặc loại bỏ hẳn ảnh hưởng sự xuống cấp. Mục đích cuối cùng là tạo
ra ảnh sau xử lý giống như ảnh ban đầu
Mã hoá: mục đích là biểu diễn ảnh với một số ít bít nhất trong điều kiện chất lượng
ảnh và độ rõ chấp nhận được cho từng ứng dụng cụ thể, chẳng hạn như hội nghò video,
truyền hình, lưu trữ và truyền thông
Chương 2: Lý thuyết Xử lý ảnh
Trang 23
Lý giải ảnh: đầu vào là ảnh, mục đích là diễn đạt nội dung ảnh bằng một hệ ký
hiệu nào đó. Những ứng dụng của lý giải ảnh bao gồm thò giác máy tính, kỹ thuật rôbốt và
nhận dạng mục tiêu. Lý giải ảnh khác với ba lónh vực khác của xử lý ảnh ở một khía cạnh
chính: đầu ra thường là một biểu diễn bằng kí hiệu nội dung của ảnh đầu vào. Sự phát
triển thành công của các hệ thống trong lónh vực này cần đến cả xử lý tín hiệu và những
khái niệm trí tuệ nhân tạo.
Hệ thống xử lý ảnh số bao gồm một phạm vi rộng các kiến thức về phần cứng, phần
mềm và cơ sở lý thuyết.
Các bước cơ bản của xử lý ảnh số được mô tả trong sơ đồ dưới đây:

Hình 2.1 : Các bước cơ bản của xử lý ảnh số
Thu thập ảnh(image acquision) : Ảnh số được thu thập bằng một cảm biến
ảnh có khả năng biến thông tin về cường độ sáng và mức xám của ảnh thực thành tín hiệu
điện áp dưới dạng analog. Tín hiệu này sau đó được số hóa để trở thành tín hiệu số.
Hiện nay có một số cảm biến ảnh thực hiện cả việc thu nhận tín hiệu về cường độ
sáng của ảnh và số hóa tín hiệu. Trong trường hợp cảm biến không có chức năng số hóa thì
cần phải có một bộ biến đổi ảnh tương tự thành ảnh số (video decoder). Tín hiệu ảnh sau

khi được số hóa còn được mã hóa theo những chuẩn video (video format) nhất đònh
trước khi được đưa vào quá trình lưu trữ và xử lý. Các chuẩn video thường gặp như IUT-
R-BT 656, 601
Chương 2: Lý thuyết Xử lý ảnh
Trang 24
Tiền xử lý ảnh : Sau khi ảnh số được thu thập dưới dạng tín hiệu số, cần phải trải
qua giai đoạn tiền xử lý. Chức năng chủ yếu của tiền xử lý là cải thiện ảnh, nâng cao
các tính chất của ảnh giúp cho các quá trình xử lý về sau được thuận tiện hơn. Các công
đoạn cơ bản của tiền xử lý là : nâng cao độ tương phản, lọc nhiễu
Phân vùng ảnh: Bước tiếp theo của quá trình xử lý là phân vùng ảnh. nh sau khi đã
được cải thiện, sẽ trở nên thuận tiện hơn cho việc phân ngưỡng và phân vùng. Nhiệm vụ
chính của phân ngưỡng và phân vùng ảnh là tách ảnh đầu vào thành các đối tượng, vật thể
riêng biệt. Kết quả của quá trình phân vùng ảnh, ta sẽ được một tập hợp các điểm ảnh có
liên kết với nhau thành các đối tượng, được đánh số phân biệt, thuận tiện cho các
quá trình xử lý cao hơn.
Đầu ra của quá trình phân vùng ảnh là các pixel chưa được lọc, bao gồm liên kết của
1 vùng hoặc tất cả các điểm ảnh trong vùng đó. Số liệu này cần được biến đổi thành dạng
thích hợp cho máy tính xử lý.
Phân tích ảnh: đây là giai đoạn xử lý bậc cao trong hệ thống xử lý ảnh số. Ảnh sau
khi được phân vùng thành các đối tượng riêng biệt, đã được đánh số phân biệt, sẽ được
phân tích để phục vụ những mục đích khác nhau như:
Xác đònh các đặc trưng hình học của đối tượng: dựa trên cơ sở đối tượng đã được
xác đònh và phân biệt, ta có thể thực hiện xác đònh các đặc trưng hình học của mỗi
đối tượng đấy, như : vò trí, kích thước, hướng, và số đối tượng hay mật độ đối tượng
trong ảnh. Đây là các đặc trưng được dùng nhiều trong hệ thống thò giác máy
(machine vision)
Nhận dạng : các đối tượng có thể là các vật thể có hình dạng nhất đònh, hoặc các kí
tự số, chữ cái, dấu vân tay Ảnh sau khi được phân vùng có thể được nhận dạng theo
những phương pháp nhất đònh như phương pháp neural, để tìm ra mẫu hình dạng mà
đối tượng đó thuộc về.

Để hướng dẫn hoạt động của từng module xử lý, cần có một hệ cơ sở kiến thức để
kiểm tra hoạt động và tương tác giữa các module. Hệ này có nhiệm vụ kiểm soát hoạt
động của từng module và sắp xếp trình tự hoạt động của chúng trong từng thời điểm, giải
quyết bài toán xung đột

×