XỬ LÝ ẢNH ĐỘNG
MOVEABLE PICTORIAL PROCESSING
MAI HỘ
Trường Đại học Kỹ thuật, Đại học Đà Nẵng
TÓM TẮT
Ảnh động là một xâu các ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong một khung ảnh. Bản
chất của đối tượng chuyển động ở trong loạt các khung ảnh này là sự biến đổi tương đối
của toạ độ vị trí của mỗi đối tượng. Điêù đó cho thấy, việc xác đinh vị trí của đối tượng
chuyển động dẫn tới nhân tố quan trọng thứ nhất đối với công nghệ xử lý ảnh động.
Thêm vào đó, cường độ chói sáng màu của đối tượng ảnh được thay đổi từ
khung ảnh này tới khung ảnh khác. Dĩ nhiên, điều đó cũng tạo nên ảnh chuyển động. Kỷ
thuật làm bù và làm xấp xỉ đối với hai ảnh chuyển động kế cạnh nhau là nội dung thứ hai
được thảo luận trong bài báo này.
ABSTRACT
Moving pictures comprise a sequence of statical images; each of them exists on
a frame. The nature of the moving object in these serial frames is the relative variation of
positional coordinate. That is the reason why the locational determining of this moving
object leads to the first important factor for the technology of moveable pictorial
processing.
In addition, the colorlightness intensity of image object is also changed from
frame to frame. Obviously, this creates the moving images. The technique of
complementing and approximating for two adjacent moveable images is the second
discussed question in this paper.
1. Hệ thông tin hình ảnh (pictorial information system)
Hệ thông tin hình ảnh là một hệ thống điều khiển và quản lý các thiết bị
nhập, xuất, xử lý, lưu trữ và cung cấp các dữ liệu hình ảnh tĩnh và động cho người
dùng. Ngày nay, người ta xây dựng những mô hình hệ thông tin xử lý ảnh độc lập
(hình 1) và chúng được kết nối với nhau trong mạng cục bộ hay qua mạng Internet
và hệ thống dịch vụ các kênh truyền hình cáp. Với hệ thông tin xử lý ảnh theo mô
hình này, công việc xử lý ảnh có thể tập hợp được sức lực của nhiều chuyên gia để
giải quyết những vấn đề phức tạp và cung cấp cho người dùng những hình ảnh
sinh động, chất lượng cao.
2. Xử lý ảnh đơn ảnh
Ảnh động là một xâu gồm nhiều ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong một
khung ảnh (frame); bản chất của sự chuyển động của một đối tượng trong xâu các
frame ảnh liên tiếp, đó là sự thay đổi vị trí tương đối (toạ độ ngang và dọc) của nó
trong từng frame. Để xử lý ảnh động, đầu tiên, người ta đề cập tới bài toán xử lý
ảnh đơn.
2.1. Phân đoạn hình ảnh
Phân đoạn ảnh là quá trình phân tích một hình ảnh thành các lớp đối tượng
riêng rẽ, mỗi đối tượng được gọi là một ảnh con. Để phân biệt đối tượng này với
đối tượng khác và tiện lợi cho bước phân tích tiếp theo, mỗi đối tượng được gán
một nhãn. Thực chất của phân đoạn ảnh là phép đối sánh mẫu. Phép đối sánh mẫu
còn gọi phép nhận dạng đối tượng, nó là phép đếm đúng (TRUE) của toán tử
AND trên hai hàm ảnh, gồm hàm Hi(x,y) của ảnh mẫu và hàm Fi(x.y) của ảnh
được phân đoạn trước xử lý cho ra hàm Gi(x,y) của ảnh kết quả sau xử lý (hình 2),
được xác định bởi biểu thức:
G
i
(x,y) = F
i
(x,y) AND H
i
(x,y). (1)
Internet Scanner, Digitizitor Khoa học và đời sống
Giao tiếp hình Bộ xử lý Thiết bị lưu trữ
ảnh truyền thông hình ảnh dữ liệu hình ảnh
Kênh Truyền hình Sensor, Camera Học tập và giải trí
Hình 1. Mô hình hệ thống thông tin xử lý ảnh
F
0
Scanner Picture Processor Monitor
F(x.y) F
i
(x.y)&H
i
(x.y) G
i
(F
i
,H
i
)
Hình 2. Sơ đồ nhận dạng phân đoạn ảnh
Một cách đầy đủ, bài toán phân đoạn mẫu ảnh là bài toán hai lớp, tương
ứng: phần cứng xử lý ảnh của máy tính có hai bộ xử lý ảnh chuyên dụng (xem
hình 3), có tên là bộ xử lý extractor và bộ xử lý classifier.
Picture Processor
Scaner Extractor Classifier Monitor
Hình 3. Sơ đồ xử lý phân đoạn mẫu ảnh
Ở đây: Bộ xử lý Extractor là bộ xử lý tách mẫu có chức năng tách ra các
vectơ khía cạnh x
1
, , x
n
từ ảnh ngưỡng (ảnh input). Bộ xử lý Classifier là bộ xử lý
đối sánh (nhận dạng) mẫu có chức năng đối sánh các vectơ khía cạnh để gắn
chúng vào các lớp Wi (với i=1 n) tương ứng, gọi là xác định nhãn cho mẫu.
Bài toán phân đoạn ảnh được tiến hành theo các bước sau:
1. Lập vectơ mở rộng y từ các vectơ khía cạnh:
y=(x
1
, x
2
, ,x
n
) (2)
2. Lập vectơ nhãn (lớp) tương ứng:
w=(w
1
, w
2
, , w
n
) (3)
3. Lập tập T là tập gồm các vectơ mở rộng y, được xác định:
T=(T
1
OR T
2
) (4)
Trong đó: T
1
và T
2
được xác định theo y: nếu y*w>0 thì y∈T
1
, còn nếu
y*w< 0 thi y∈T
2
.
Giải thuật cho bài toán phân đoạn ảnh gồm các bước:
1. Nhập từng y cho bộ xử lý Classifier;
2. Nếu T
1
=y và y*w< 0 thì w= w +a*y; (a là hằng số sửa sai cần thiết, lấy
a=[1,2,3,.])
3. Nếu T
2
=y và y* w>0 thì w= w-a*y;
4. Nếu đã cải thiện theo bước 2 và bước 3 mà vẫn không đáp ứng các yêu
cầu về xử lý ảnh, thì trở lại xử lý ảnh từ bước 1.
2.2. Đối sánh tương quan hình ảnh
Gọi w(x, y) là ma trận các điểm ảnh của cửa sổ ảnh và T(x, y) là ma trận
các điểm ảnh của ảnh mẫu; nội dung của phép đối sánh hai ma trận w(x,y) và T(x,
y) là tìm một phép biến đổi Г để biến đổi w thành T và ngược lại (hình 4.a). Trong
thực tế, muốn biến đổi từ w thành T và ngược lại, thường phải biến đổi qua ma
trận trung gian R(k, l), tức là phải dùng hai phép biến đổi tương quan Г
1
và Г
2
(hình 4.b).
Г Г
1
Г
2
w T w R T
a. b.
Hình 4. Sơ đồ phép biến đổi tương quan
Ma trận ảnh trung gian R gọi là ma trận tương quan của w và T, được xác
định bởi các biểu thức:
R(k, l)=
∑∑w(x, y) *T(x-k, y-l) (5)
R(k, l)= ∑∑w(x+k, y+l) *T(x, y) (6)
Trong đó: k và l là toạ độ mức xám của ma trận ảnh tương quan R, chúng
thường được lấy trong giải gíá trị (0, ±1, ±2, ±3 ).
Để gia tăng chất lượng ảnh xử lý, khi cần, người ta còn phải xác định ma
trận tự tương quan của chính ảnh w hay của ảnh T, gọi là các ma trận tương quan
mở rộng, cụ thể:
1. Ma trận tự tương quan của ma trận w(x, y) là ma trận Rw(k, l) được xác
định bởi biểu thức:
R
w
(k,l)= ∑∑w(x, y) * w (x-k, y-l) (7)
Khi k=0 và l=0, thì ma trận tự tương quan Rw trở thành:
R
w
(0,0)= ∑∑w
2
(x, y) (8)
2. Ma trận tự tương quan của ma trận T(x,y) là ma trận RT(k,l) được xác
định:
R
T
(k,l)= ∑∑T(x, y) * T(x-k, y-l) (9)
Khi k=0 và l=0 thì RT trở thành:
R
T
(0,0)= ∑∑T
2
(x, y) (10)
3. Hệ số tương quan của hai ma trận w(x, y) và T(x, y) là Q(k,l), được xác
định:
Q(k,l)= |R(k,l)| / √ R
w
(0,0)* R
T
(0,0) (11)
Khi tính R(k,l), ta xây dựng giải thuật cho 2 trường hợp:
Trường hợp 1, khi (k,l)>=0 thì hệ số tương quan được tính:
if (k>=0 and l>=0) then
Q:=Q+ w(x, y) * T(x-k, y-l);
Trường hợp 2, khi (k,l)<=0 thì hệ số tương quan dược xác định:
if (k<0 and l<0) then
Q:=Q+ w(x-k, y-l) * T(x, y);
Sau đó quay lại tính ma trận tương quan R(k,l) như đã nêu nêu ở trên.
3. Xử lý ảnh động
Ảnh động là một xâu gồm nhiều ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong một
khung ảnh (frame); baní chất của sự chuyển động của một đối tượng trong xâu: đó
là sự thay đổi vị trí tương đối (toạ độ ngang và dọc) của nó trong từng frame.
3.1. Tổ chức bộ nhớ đệm hiển thị hình ảnh động
Bộ nhớ đệm hình ảnh còn gọi là bộ nhớ hiển thị khung ảnh (frame buffer)
được phân thành hai nhóm: một nhóm để lưu trữ các tổ chức gói điểm ảnh
(pixelpackage memory) và nhóm kia lưu trữ dữ liệu của từng loại điểm ảnh
(bitperpixel memory). Với màn hình mode VGA 256 màu có độ phân giải
640x480, sơ đồ kết nối bộ nhớ đệm với RAM chứa màu (palette ram) và RAM
trộn màu (lookup ram) như trong hình 5.
anlog guns
LUT RAM R
Frame Palete LUT RAM G Monitor
Buffer RAM LUT RAM B
Hình 5. Sơ đồ bố trí bộ nhớ đệm và các thanh ghi màu màn hình VGA
Có hai loại bộ nhớ đệm hiển thị hình ảnh là DRAM và VRAM. Chức năng
chính của DRAM và VRAM là hoạt động kiểm tra hiển thị hình ảnh lên màn hình.
Trong các máy tính đời mới, VRAM được dùng phổ biến trong cấu hình hiển thị
hình ảnh động của máy; bởi vì ngoài chức năng nói trên, VRAM còn có chức
năng ghi dịch: cho phép dịch các cột từ bộ nhớ độc lập với cổng truy nhập
(accessport) ngẫu nhiên.
Kích thước ảnh Kích thước pixel Tốc độ frame Tốc độ dữ liệu
160x120 8 bit/pixel 15 frame/second 21MB/s
160x120 16 bit/pixel 30 frame/s 43MB/s
320x240 8 bit/pixel 15 frame/s 38MB/s
320x240 16 bit/pixel 30 frame/s 67 MB/s
640x480 8 bit./pixel 15 frame/s 55 MB/s
640x480 16 bit/pixel 30frame/s 115 MB/s
800x600 16 bit/pixel 30frame/s 165 MB/s
Hình 6. Bảng tốc độ hiển thị dữ liệu ảnh động
Với bộ nhớ đệm của các loại máy tính trên thị trường, tốc độ ảnh động
phải đảm bảo các số liệu tiêu chuẩn theo bảng trong hình 6.
Đối với các ảnh có độ phân giải 320x200, bộ nhớ hiển thị hình ảnh bắt đầu
tại địa chỉ A0000 (hex) trong không gian địa chỉ PC của bộ nhớ với 64 kB. Byte
thứ nhất của vùng này tuân theo pixel trái ở trên của cửa sổ hiển thị và 320 byte
đầu tiên tuân theo hàng pixel thứ nhất trên cửa sổ hiển thị. Cách bố trí này cho
phép tính địa chỉ để hiển thị pixel một cách đơn giản. Giả thử điểm góc trên bên
trái của cửa sổ màn hình có toạ độ (0,0), thì địa chỉ tại một điểm ngẫu nhiên có toạ
độ (x, y) có thể được tính theo biểu thức:
Địachỉ(x, y)=A0000+y*320+x*200. (12)
3.2. Lấy mẫu màu
Lấy mẫu màu cho ảnh video các hệ NTSC, PAL và SECAM là một vấn đề
quan trọng của xử lý hình ảnh. Tổ chức CCIR (Committe Consultation
Internnational Radiodiffusion) quy định: mỗi mẫu màu được ký hiệu bằng một
xâu gồm ba chữ số (nguyên) ngăn cách nhau bởi dấu hai chấm, các số này biểu thị
tỷ số tương đối của mỗi thành phần cấu thành mẫu ảnh. Ở đây, số đầu tiên biểu
diễn độ chói Y, số thứ hai biểu diễn thành phần màu R ký hiệu CR và số thứ ba
biểu diễn thành phần màu B ký hiệu CB. Trong xử lý ảnh, tỷ số này chỉ lấy một
trong hai giá trị: Y:CR:CB=4:2:2 và 4:1:1.
Nếu mỗi thành phần của một mẫu ảnhì có kích thước là 8 bit thì số
bit/pixel đối với từng mẫu ảnh được tính:
Với mẫu Y:CR:CB=4:2:2 là 8*4/2=18 bit/pixel;
Với mẫu Y:CR:CB=4:1:1 là 8*6/4=12 bit/pixel.
Để thấy rõ hiệu quả lấy mẫu màu, các giao diện của chương trình khai
thác và chế biến dữ liệu hình ảnh cung cấp các chức năng lấy mẫu màu đuợc giới
thiệu trong tài liệu [9]. Ở đây, chương trình thiết kế đã giải quyết vấn đề lấy mẫu
ảnh video với các tác dụng: cho phép hiển thị tối đa 256 màu khác nhau, thực hiện
phép lấy mẫu xử lý dữ liệu màu một cách thuận lợi, dễ dàng, nhanh chóng và
chính xác.
3.3. Bù chuyển động
Ảnh động là một xâu gồm nhiều khung ảnh (frames) tĩnh, trong đó, sự
dịch chuyển tọa độ tương đối của các đối tượng trong các frames liên tục là hiệu
quả tạo ra sự chuyển động. Do đó, việc tính toán sự chuyển vị của các đối tượng
trong ảnh là yếu tố quan trọng của kỹ thuật chế biến ảnh động (ví dụ thiết kế tệp
tin ảnh hoạt hình). Đặc điểm của nén liên ảnh là làm xấp xỉ, bù chuyển động và
nén trong ảnh; ý tưởng đó, được xây dựng nên mô hình nén liên ảnh như trong
hình 7 sau đây. Ngoài sự thay đổi vị trí toạ độ, sự thay đổi về cường độ sáng của
đối tượng ảnh từ frane này tới frame khác cũng tạo nên ảnh chuyển động. Trong
kỷ thuật bù chuyển động, ảnh của frame hiện hành được dự báo từ ảnh của frame
kế trước bằng cách làm xấp xỉ chuyển động giữa hai frame và bù chuyển động đó:
sự khác nhau giữa frame hiện hành và frame dự báo được gọi là phần dư thừa bù
chuyển động; và kỹ thuật nén liên ảnh chính là đưa vào việc mã hoá phần dư thừa
bù chuyển động này.
Ảnh nguồn Bù chuyển động Nén trong ảnh Ảnh lưu
Hình 7. Mô hình nén liên ảnh
Cường độ chói màu của ảnh còn gọi là năng lượng hiển thị hình ảnh. Đối
với ảnh động, đặc trưng về năng lượng ảnh của phần dư thừa bù chuyển động thấp
hơn nhiều so với ảnh gốc. Do đó, việc mã hoá phần dư thừa thay vì mã hoá cả xâu
ảnh video nên đã giúp tránh được phần dư thừa này bị mã hoá lặp nhiều lần. Như
vậy, việc xác định phần ảnh động để làm xấp xỉ chuyển động là quá trình khôi
phục một ảnh bằng cách dùng các phần ảnh trong frame trước đó cùng với các
thông tin về chuyển động của frame này chính là công việc bù chuyển động. Sự
đánh giá chuyển động của ảnh có thể thực hiện trên toàn frame: người ta chia mỗi
frame thành các ô mẫu nhỏ (thường lấy 8x8 pixel/1ô), sau đó đánh giá chuyển
động của từng ô. Hình 8 minh hoạ chuyển động chiếc xe máy kéo với một cặp
frame liền kề từ xâu ảnh động để đánh giá ô nào biểu diễn phần ảnh tĩnh và ô nào
biểu diễn phần ảnh động. Việc đánh giá này dẫn tới hai vấn đề:
1. Phải xác định biên và khoảng dịch chuyển của vùng ảnh chuyển động
giữa hai frame.
2. Phải xác định cái gì được điền vào không gian trống do vùng ảnh đã
chuyển động.
3 2
frame 1 frame 2
Hình 8. Khảo sát ô mẫu pixel của ảnh chuyển động
Phép xấp xỉ và bù chuyển động chính là giải quyết hai yêu cầu nêu ở trên
trong hệ thống mã hoá nén và giải mã nén: đầu tiên bộ giải mã phải lưu ảnh trước
(frame 1) trong khi tạo lại ảnh tiếp theo (frame 2); khi bộ mã hoá thực hiện mã
hoá frame 2 thì đồng thời phải tạo lại mỗi ảnh (sau khi mã hoá nó) để dự báo cho
bộ giải mã tạo lại ảnh này (frame 2) vì bộ giải mã không có chức năng tạo lại các
ô mẫu bù chuyển động.
Phương pháp dự đoán để tìm ra các chi tiết ảnh thay thế giữa hai khung
hình (frame) liền kề và tạo ra một vector chuyển động chỉ rõ vị trí mới của đối
tượng ảnh chuyển động được nêu như ở trên hình 9. Ở đây, vector chuyển động sẽ
phối hợp với các ô ở trong biên biểu diễn vùng chuyển động được mã hoá trước
đó để lặp lại các ô này tại vị trí mới của ảnh. Các ô mẫu ở vị trí hiện tại sẽ phối
hợp trong số các ô của khung ảnh trước đó, sử dụng chúng như là thành phần dự
đoán trong bảng mã hoá đã được thiết lập trước đó: thành phần dự đoán này được
lấy từ đầu vào của khung trước để tạo ra một khung dự đoán có sai số thông tin
nhỏ. Sai lệch giữa ô hiện tại và ô dự đoán của nó trong khung ảnh trước sẽ tạo ra ô
mẫu dự đoán bù chuyển động.
Vị trí ô 8x8 pixel lúc đầu Vector chuyển động Vị trí ô 8x8 pixel hiện tại
a.frame thứ i Vùng tìm kiếm b.frame i+1
Hình 9. Mô tả vector chuyển động giữa hai frame kế cạnh nhau
Vùng tìm kiếm được xác định nằm trong biên của vùng ảnh có chứa các ô
mẫu ảnh chuyển động của khung ảnh hiện tại, nó bao phủ cả vị trí hiện tại và vị trí
trước đó của ô mẫu chuyển động đang khảo sát. Kích thước của vùng tìm kiếm
được quyết định bởi độ phức tạp của quá trình phối hợp ô mẫu ảnh chuyển động
của vị trí trước và vị trí hiện tại, thường vùng này lấy kích thước 16x16 hay 24x24
pixel.
Để giảm thiểu công việc nặng nhọc của quá trình xác định vector chuyển
động, người ta có thể xử lý ảnh động theo các bước:
1.Bước xử lý thô: Đầu tiên, giảm độ phân giải của ảnh xử lý, chẳng hạn
ảnh 720x480 giảm xuống 360x240 (pixel); khi đó số bit cần xử lý giảm nhiều và
vùng dự đoán trở nên lớn hơn, do đó ảnh dự đoán chuyển động mức thô xác định
được nhanh hơn.
2.Bước xử lý tinh: Sau khi có ảnh dự đoán thô, người ta tiến hành phép dự
đoán vector chuyển động chính xác bằng cách xác định vị trí chính xác của các
đối tượng chuyển động giữa hai khung ảnh với độ phân giải 720x480.
3.Tiếp tục lặp hai bước trên cho đến hết các frame của xâu ảnh động.
Kết luận: Diễn biến của quá trình xử lý ảnh động này được gọi là quá trình
nén trong ảnh.
3.4. Kỹ thuật làm tươi hình ảnh
Với kỹ thuật dự đoán bù chuyển động để xác định vector chuyển động của
đối tượng thuộc xâu ảnh động, frame đầu tiên của xâu phải được các trình điều
khiển xử lý ảnh đưa tới lưu ở bộ giải mã của phần cứng máy tính để bắt đầu vòng
dự đoán. Khi đó một cơ chế hoạt động trong hệ thống được thiết dặt, để, nếu cơ
cấu giải mã mất đồng bộ do bất kỳ lý do nào thì nó có thể nhanh chóng đồng bô
ülại được. Cơ chế hoạt động này được gọi là kỷ thuật làm tươi hình ảnh. Để mã
hoá nén ảnh động nhằm nâng cao chất lượng ảnh xử lý, người dùng có thể chọn sử
dụng một trong hai cơ chế làm tươi hình ảnh sau đây:
Làm tươi có chu kỳ: Cứ sau một khoảng thời gian nhất định, ảnh hiện tại sẽ
không đối sánh (nhận dạng) với ảnh dự đoán nữa mà được truyền thẳng sau khi đã
qua nén trong ảnh. Ưu điểm của giải pháp này là cho một điểm chèn rõ ràng trong
dòng bit được nén mà chất lượng ảnh suy giảm không đáng kể và ảnh giải nén thu
được nhanh (chưa tới 1/10 giây). Nhược điểm của phương pháp này là cần tới một
bộ nhớ đệm lớn.
Làm tươi liên tục: Nội dung chính của phương pháp này là các vector chuyển
động của đối tượng ảnh được nén trong ảnh; do đó giảm được kích thước bộ nhớ
đệm. Nhược điểm của giải pháp này, ảnh thu được sau khi bung chất lượng đạt
không cao.
4. Kết luận
Xử lý và chế biến dữ liệu ảnh động đang là vấn đề được cơ quan và trung
tâm thiết kế phần mềm quan tâm. Việc nghiên cứu và khảo sát bài toán xử lý và
chế biến dữ liệu hình ảnh động nhằm mục đích cung cấp những giải pháp cơ bản,
cho phép xây dựng các phần mềm chuyên dụng để xử lý và chế biến dữ liệu hình
ảnh video.
TÀI LIỆU THAM KHẢO
[1] D. Reschke, Telematik, Universitaet Ilmenau, 1998.
[2] A.H. Schindler, Verteilte Betriebssyseme, Universitaet Ilmenau, 1998.
[3] Ruediger Brause, Grundlage und Konzepte Betriebssysteme, Springer
verlage, 1998.
[4] Ralf Steinmetz, Multimedia Technologie, Springer verlage, 1998.
[5] J. Walrand, Communication Networks, University of California, at
Berkwley, 1991.
[6] J.N. Daigle, Queueing Theory for Telecommunications, Weskey Ins, 1992.
[7] Mai Hộ, Cơ sở xử lý ảnh (giáo trình lưu hành nội bộ), Đà Nẵng, 2002.
[8] Nguyễn Kim Sách, Xử lý ảnh và video số, NXB KHKT Hà Nội, 1997.
[9] Mai Hộ, Thiết kế hệ thống khai thác và chế biến dữ liệu hình ảnh (đề tài
NCKH 2002, nghiệm thu 1/2003).
[10] R. Schaefer, MPEG-2 und MPEG-4 Kompressionstandards fuer neue
Multimediadienst, Berlin, BRD (qua Internet).
[11] M. Schmoell, R. Hedtke, Transcodierung und Bearbeitung von MPEG-
Stroemen im Studiobereich, Wiesbaden, BRD (qua Internet).
[12] M. Muehlhaeuser, Content Development fuer das Internet als viertes
Massenmedium, Ilmenau, BRD (qua Internet).
[13] F. Senf, IEEE 1394 - Serieller Hochgeschwindigkeitsbus zuer
Uebertragung von Audio- und Videodaten, Ilmenau, BRD (qua Internet).