XỬ LÝ ẢNH ĐỘNG - MOVEABLE PICTORIAL PROCESSING
Ả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.
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:
Gi(x,y) = Fi(x,y) AND Hi(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
F0 Scanner Picture Processor
Monitor
F(x.y) Fi(x.y)&Hi(x.y) Gi(Fi ,Hi)
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 x1,.., xn 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=(x1, x2,...,xn) (2)
2. Lập vectơ nhãn (lớp) tương ứng:
w=(w1, w2,.., wn) (3)
3. Lập tập T là tập gồm các vectơ mở rộng y, được xác định:
T=(T1 OR T2) (4)
Trong đó: T1 và T2 được xác định theo y: nếu y*w>0 thì y ∈T1, còn nếu
y*w< 0 thi y∈T2.
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 T1=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 T2=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:
Rw(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:
Rw(0,0)= ∑∑w2(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:
RT(k,l)= ∑∑T(x, y) * T(x-k, y-l) (9)
Khi k=0 và l=0 thì RT trở thành:
RT(0,0)= ∑∑T2(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)| / √ Rw(0,0)* RT(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) 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).