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 toạ độ vị trí của mỗi đối tượng.. Điều đó cho thấy, kỹ thuật xác định vị trí của đối tượng chuyể
Trang 1- -ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
Giảng viên hướng dẫn : Th.S LÊ THANH THỦY
Sinh viên thực hiện : ĐÀM HOÀNG ANH
Khóa : 2010 – 2015
HÀ NỘI – 2014
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA VIỄN THÔNG I
Đề tài:
“XỬ LÝ ẢNH ĐỘNG BẰNG PHƯƠNG PHÁP
OPTICAL FLOW”
Trang 2………
……….
………
……….
………
……….
………
……….
……….
……….
……….
……….
……….
……….
……….
……….
……….
………
……….
……….
……….
……….
……….
………
…. Điểm:………(Bằng chữ : ……… )
Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp ………
Hà nội, ngày … tháng … năm 2014
Cán bộ - Giảng viên hướng dẫn
Trang 4………
……….
………
……….
………
……….
………
……….
……….
……….
……….
……….
……….
……….
……….
……….
……….
………
……….
……….
……….
……….
……….
……….
……….
……….
………
……….
… Điểm:……… ……….(Bằng chữ:……… )
Trang 5(Ký, họ tên)
Trang 6LỜI NÓI ĐẦU
Dưới sự phát triển nhanh chóng về dân số và mức độ sống, nhu cầu của conngười về công nghệ, truyền hình và các dịch vụ giải trí cũng tăng nhanh tương ứng Từnhững bức hình đen trắng đơn giản, cho đến những cuộn phim là sự ghép nối đơn sơ
từ những bức ảnh 2 màu, thì ngày nay, con người ta đã đạt bước tiến xa hơn là nhữngthước phim ảnh động nhiều màu sắc
Bên cạnh đó, ứng dụng của ảnh động trong thực tiễn ngày nay rất đa dạng.Không những được áp dụng trong công nghệ truyền hình, phim truyện, mà nó còn xuấthiện trong cả những cơ chế vận hành robot, hay dùng dể theo dõi, điều khiển, phânluồng giao thông rất hữu ích
Dẫu vậy, công cuộc nghiên cứu để xử lý ảnh sao cho hiệu năng và chất lượngảnh được tốt nhất vẫn còn gặp rất nhiều khó khăn và thách thức Dù có nhiều phươngpháp xử lý khác nhau đã được đề xuất ở nhiều nơi trên thế giới, song, trong phạm vi
đồ án tốt nghiệp đại học của mình, em xin được giới thiệu một phương pháp mới và
nhiều tiềm năng trong lĩnh vực xử lý ảnh động là “Xử lý ảnh động bằng phương pháp
Optical flow”.
Nội dung đồ án chi tiết của em gồm 3 chương cơ bản:
Chương 1: Tổng quan xử lý ảnh động
Chương 2: Nghiên cứu phương pháp Optical flow
Chương 3: Ứng dụng Optical flow trong xử lý ảnh động
Qua một khoảng thời gian nỗ lực nghiên cứu và tìm hiểu, cùng với sự chỉ bảotận tình của các thầy cô trong khoa, đặc biệt là giảng viên ThS Lê Thanh Thủy, emcuối cùng cũng đã hoàn thành được bản đồ án tốt nghiệp Do đây là đề tài còn khá mới
và vốn kiến thức bản thân còn hạn chế nên không tránh được các sai sót, kính mongquý thầy cô và các bạn sinh viên đóng góp ý kiến để bản đồ án này hoàn thiện hơn
Cuối cùng, em xin được gửi lời cảm ơn chân thành nhất tới các thầy cô trongkhoa Viễn thông 1 nói chung và đặc biệt là giảng viên ThS Lê Thanh Thủy nói riêng
đã tận tình giúp đỡ em trong suốt thời gian qua
Hà Nội, tháng 11 năm 2014
Sinh viên thực hiện
Đàm Hoàng Anh
Trang 7MỤC LỤC
Trang 10Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt
CCIR Committe Consultation
Internnational Radiodiffusion Hội đồng tư vấn quốc tế về vôtuyến điện
EE Error in the flow Endpoint Sai số đầu cuối
FOC the Focus of Contraction Điểm trọng tâm thu hẹpFOE the Focus of Expansion Điểm trọng tâm mở rộng
GT Ground Truth Tập dữ liệu chuẩn tham chiếu
MAV Micro Air Vehicle Phương tiện bay siêu nhỏ
NE Normalized Error Sai số nội suy chuẩn hóaNTSC National Television System
Committee
Ủy ban hệ thống truyền hình
quốc giaPAL Phase Alternative Line Đảo pha theo từng dòng mộtRAM Random Access Memory Bộ nhớ truy xuất ngẫu nhiên
SECAM Sequential Color with Memory Hệ màu tuần tự của bộ nhớ
SR Simple Registration Đăng ký đơn giảnSSD Sum of Squared Difference Tổng các sai phân bình
phươngVGA Video Graphic Array Mảng ảnh đồ họa hìnhVRAM Video RAM Bộ nhớ của Card tăng tốc đồ
họa máy tính
Trang 11CHƯƠNG I: TỔNG QUAN XỬ LÝ ẢNH ĐỘNG
Ảnh động là một xâu chuỗi của các ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong mộtkhung ả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 toạ độ vị trí của mỗi đối tượng Điều đó cho thấy, kỹ thuật xác định
vị trí của đối tượng chuyển động là nhân tố quan trọng thứ nhất đối với công nghệ xử
1.2: Xử lý ảnh đơn
Ảnh động là một xâu chuỗi của nhiều ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong mộtkhung ảnh (frame); bản chất của sự chuyển động của một đối tượng trong xâu cáckhung ảnh liên tiếp là sự thay đổi vị trí tương đối (toạ độ ngang và dọc) của nó trongtừng khung Để xử lý ảnh động, điều đầu tiên cần đề cập tới chính là bài toán xử lý ảnhđơn
1.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ượngriê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 đốitượ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épnhậ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 H x yi( , )của ảnh mẫu và hàm F x yi( , )của ảnh được phân đoạn trước xử
Trang 12lý cho ra hàm G x yi( , )của ảnh kết quả sau xử lý (hình 1.2), được xác định bởi biểuthức:
( , ) ( ,y)AND ( , )
Hình 1.1: Mô hình hệ thống thông tin xử lý ảnh
Hình 1.2: Sơ đồ nhận dạng phân đoạn ảnh
Đầy đủ hơn, bài toán phân đoạn mẫu ảnh là bài toán hai lớp Tương ứng với đó: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 1.3), cótên là bộ xử lý Extractor và bộ xử lý Classifier
Trang 13Hình 1.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 vectorkhí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
i
W (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:
Bước 1: Lập vectơ mở rộng y từ các vectơ khía cạnh:
1 2( , , , )n
Bước 2: Lập vectơ nhãn (lớp) tương ứng:
1 2( , , , )n
Bước 3: Lập tập T là tập gồm các vectơ mở rộng y, được xác định:
1 2( OR )
Trang 141.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ậnw x y ( , )và T x y ( , )là tìmmột phép biến đổi để biến đổi thành T và ngược lại (hình 1.4a) Trong thực tế,muốn thực hiện biến đổi này, 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 1.4b)
Hình 1.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 và T, được xácđịnh bởi các biểu thức:
Trang 15Để 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 hay của ảnh T, gọi là các ma trận tương quan mở rộng,
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 ( , ) 0 k l ≥ thì hệ số tương quan được tính:
if (k>=0 and l>=0) thenQ:=Q+ w(x, y) * T(x-k, y-l);
Trường hợp 2, khi ( , ) 0 k l ≤ thì hệ số tương quan được xác định:
Trang 16if (k<0 and l<0) thenQ:=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 ở trên
1.3: Xử lý ảnh động
Ảnh động là một xâu chuỗi gồm nhiều ảnh tĩnh, mỗi ảnh tĩnh tồn tại trong mộtkhung ảnh (frame) Bản 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 khung
1.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ớ đệm hiển thị khung ảnh (frame buffer)được phân thành hai nhóm: Một nhóm để lưu trữ các gói điểm ảnh (pixel packagememory) và nhóm kia lưu trữ dữ liệu của từng loại điểm ảnh (bit per pixel memory).Với màn hình mode VGA 256 màu có độ phân giải 640 x 480, sơ đồ kết nối bộ nhớđệm với RAM chứa bảng màu (palette RAM) và RAM trộn màu (LUT RAM) nhưtrong hình 1.5
Hình 1.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ăngchí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 Ngoài ra, 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 AP (Access Port – Cổng truy nhập) ngẫu nhiên
Bảng 1.1: Tốc độ hiển thị dữ liệu ảnh động Kích thước ảnh Kích thước
Trang 17Địachỉ(x, y)=A0000+y*320+x*200 (1.12)
1.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 đề quantrọng trong xử lý ảnh Theo tổ chức CCIR (Committe Consultation InternnationalRadiodiffusion – Hội đồng tư vấn quốc tế về vô tuyến điện) quy định:
“Mỗi mẫu bằng một màu được ký hiệu 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 C C : :R B = 4:2:2 và4:2:0
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 đốivới từng mẫu ảnh được tính:
Với mẫu Y C C : :R B = 4:2:2 là 8 4
16 2
× = bit/pixel;
Với mẫu Y C C : :R B = 4:2:0 là 8 6
12 4
× = 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
Trang 18tài liệu [1] Ở đây, chương trình thiết kế đã giải quyết vấn đề lấy mẫu ảnh video vớicá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
1.3.3: Bù chuyển động
Ảnh động là một xâu gồm nhiều khung ảnh tĩnh, trong đó, sự dịch chuyển tọa
độ tương đối của các đối tượng trong các khung 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ố quantrọ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ểmcủ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âydựng trên mô hình nén liên ảnh như trong hình 1.7 dưới đây) Ngoài sự thay đổi vị trítoạ độ, sự thay đổi về cường độ sáng của đối tượng ảnh từ khung này tới khung kháccũng tạo nên ảnh chuyển động Trong kỹ thuật bù chuyển động, ảnh của khung hiệnhành được dự báo từ ảnh của khung kế trước bằng cách làm xấp xỉ chuyển động giữahai khung và bù chuyển động đó Sự khác nhau giữa khung hiện hành và khung dự báođược gọi là phần dư thừa bù chuyển động 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
Hình 1.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ơnnhiều so với ảnh gốc Do đó, việc mã hoá phần dư thừa thay vì mã hoá cả xâu ảnhvideo đã 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ằngcách dùng các phần ảnh trong khung trước đó cùng với các thông tin về chuyển độngcủa khung 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 khung: Người ta chia mỗi khung thành các ô mẫu nhỏ(thường lấy 8 x 8 pixel/ô), sau đó đánh giá chuyển động của từng ô Hình 1.8 minh hoạchuyển động chiếc xe máy kéo với một cặp khung 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àydẫn tới hai vấn đề:
a Phải xác định biên và khoảng dịch chuyển của vùng ảnh chuyển độnggiữa hai khung
Trang 19b 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.
Hình 1.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ìnhliề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 1.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 ảnhtrước đó, sử dụng chúng như là thành phần dự đoán cho bảng mã hoá đã được thiết lậptrướ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ộtkhung 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
Trang 20Hình 1.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 địnhbở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 16 x 16 hay 24 x 24 pixel
Xử lý ảnh động theo các bước:
Bước xử lý thô: Đầu tiên, giảm độ phân giải của ảnh xử lý, chẳng hạnảnh 720 x 480 giảm xuống 360 x 240 pixel Khi đó số bit cần xử lý giảmnhiều và vùng dự đoán trở nên lớn hơn, do đó ảnh dự đoán chuyển độngmức thô xác định được nhanh hơn
Bước xử lý mịn: 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áccủa các đối tượng chuyển động giữa hai khung ảnh với độ phân giải 720
x 480
Tiếp tục lặp hai bước trên cho đến hết các frame của xâu ảnh động
Tóm lại, diễn biến của quá trình xử lý ảnh động được gọi là quá trình nén trongảnh
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àngtrong dòng bit được nén mà chất lượng ảnh suy giảm không đáng kể và ảnh giảiné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 Nhờ đó có thể giảm được kích
Trang 21thước bộ nhớ đệm Nhược điểm của giải pháp này là chất lượng ảnh sau giảinén không cao.
1.4 Tổng kết chương 1
Nội dung chương 1 chủ yếu đề cập đến kỹ thuật xử lý ảnh động cùng nhữngthuật ngữ liên quan Trong đó có bao gồm 2 phần chính là kỹ thuật xác định vị trí củađối tượng chuyển động và kỹ thuật làm bù và làm xấp xỉ đối với hai ảnh chuyển động
kế cạnh nhau Bên cạnh đó, những quy trình cơ bản của xử lý ảnh đơn và ảnh động(xâu chuỗi của những ảnh tĩnh) cũng được giới thiệu đến trong nội dung của chương.Qua đó giúp người đọc có được cái nhìn tổng quan nhất về hệ thống thông tin hình ảnhđang vận hành trong thực tế
Trang 22CHƯƠNG II: NGHIÊN CỨU PHƯƠNG PHÁP OPTICAL FLOW
2.1 Khái niệm Optical Flow
2.1.1 Định nghĩa
Optilcal flow là khái niệm chỉ sự chuyển động tương đối của các điểm trên bềmặt một đối tượng, vật thể nào đó gây ra, dưới góc quan sát của một điểm mốc (mắt,camera…) Sự chuyển động của các vật thể (mà thực tế có thể coi là sự chuyển độngcủa các điểm trên bề mặt của vật thể ấy) trong không gian 3 chiều, khi được chiếu lênmột mặt phẳng quan sát 2D được gọi là trường chuyển động (motion field)
Khái niệm này lần đầu tiên được đưa ra bởi một nhà tâm lý học người Mỹ,James J Gibson, vào năm 1940, dùng để mô tả những tác nhân kích thích thị giác chocác loài động vật có thể di chuyển trên thế giới Khi đó, ông đã rất nhấn mạnh tầmquan trọng của Optical flow trong nhận thức Affordance
Sau này, những người hâm mộ ông và phương pháp tiếp cận tâm lý học của ông
đã chứng minh được nhiều hơn nữa vai trò của những tác nhân kích thích Optical flowtrong nhận thức về hình dáng, khoảng cách, chuyển động và kiểm soát vận động củacác đối tượng trên thế giới dưới góc quan sát của một điểm mốc
Cùng với sự phát triển của khoa học, Optical flow giờ đây đã được sử dụngcùng các kỹ thuật liên quan tới xử lý ảnh và điều khiển điều hướng để được đầy đủ vàchi tiết hơn
(Chú ý: Affordance là từ dùng để chỉ một vật thể mà khi nhìn nó bạn có thể đoán ra việc sẽ phải tương tác nó thế nào Ví dụ nhìn thấy quai ở cặp sách bạn biến nó để sách, dây để đeo, nút để khoá xoay hay khoá kéo…).
2.1.2 Ước tính chuyển động
Thứ tự của các chuỗi ảnh sẽ cho phép ta có thể dự đoán chuyển động, hay vậntốc tức thời của hình ảnh hoặc chuyển vị ảnh Có nhiều kĩ thuật xác định Optical flowkhác nhau như correlation, matching, feature-tracking, energy-based, gradient…nhưng giới hạn trong nội dung đồ án, ta sẽ chỉ tập trung vào các phương pháp dựa trêngradient
Các phương pháp Optical flow đều được sử dụng để ước tính chuyển động giữa
2 khung ảnh diễn ra tại thời điểm và t t + ∆ tại mọi vị trí ảnh 3 chiều Tuy nhiên, giữa
Trang 23mỗi phương pháp lại có sự khác biệt Lý do là bởi, chúng phải dựa trên các chuỗiTaylor xấp xỉ của tín hiệu ảnh hay là phải sử dụng tới những đạo hàm của các tọa độkhông gian và thời gian.
Với trường hợp điểm ảnh 3 chiều theo chiều 2D + t (tương tự với 3D hoặc n-D)
tại vị trí (x,y,t) với cường độ sáng I(x,y,t) sẽ di chuyển khoảng ∆ x, ∆ y, ∆ t giữa 2khung ảnh Khi đó, ràng buộc không đổi về cường độ sáng sẽ là:
Trang 24là phương trình đường thẳng trong 2D với vector
pháp tuyến∇ IT
Để tìm Optical flow, cần thiết phải có tập hợp những phương trình được chobởi các ràng buộc cung cấp Tất cả các phương pháp Optical flow đều đưa ra các điềukiện bổ sung để ước tính flow thực tế
2.1.3 Ứng dụng
Ước tính chuyển động và kỹ thuật nén video đóng vai trò quan trọng trongnghiên cứu Optical flow Trong khi trường Optical flow có vẻ tương tự như mộttrường chuyển động dày đặc bắt nguồn từ kỹ thuật ước tính chuyển động, phươngpháp Optical flow là những nghiên cứu không chỉ quyết định các trường Optical flowriêng mình mà còn được sử dụng để ước tính tính chất 3 chiều và cấu trúc của mộtcảnh (scene), cũng như là chuyển động 3D của các đối tượng và người quan sát liênquan đến cảnh đó, chủ yếu là sử dụng ảnh Jacobian
Bên cạnh đó, ứng dụng của Optical flow còn bao hàm các suy luận khôngnhững là về các chuyển động của vật thể hoặc quan sát viên trong một cảnh, mà còn vềcấu trúc của các đối tượng và môi trường
Ngày nay, các nhà nghiên cứu robot ứng dụng Optical flow vào nhiều lĩnh vựcnhư: Theo dõi và phát hiện đối tượng; khai thác mặt phẳng ảnh trội; điều hướng robot
và odometry thị giác Trên hết, thông tin Optical flow cũng được công nhận là hữudụng trong việc điều khiển MAV (Micro Air Vehicle – Phương tiện bay siêu nhỏ)
Trang 25Có thể thấy, tiềm năng và ứng dụng của Optical flow là rất phong phú Chi tiếtứng dụng của phương pháp này sẽ được đề cập ở chương 3 của đồ án.
2.2 Cơ sở dữ liệu Optical flow
2.2.1: GT (Ground-Truth) đặc sử dụng kết cấu huỳnh quang ẩn
Một kỹ thuật bắt ảnh các cảnh mềm với phương pháp Optical flow GT đã đượcphát triển Xây dựng một cảnh (scene) có thể được di chuyển từng bước rất nhỏ đượcđiều khiển bằng máy tính Mô hình phủ bởi sơn huỳnh quang cho tất cả các bề mặt củacảnh được áp dụng Máy tính sẽ thực hiện quá trình lặp lấy một cặp hình ảnh có độphân giải cao cả dưới ánh sáng môi trường xung quanh lẫn dưới ánh sáng UV (cựctím) và sau đó di chuyển các cảnh bằng từng bước nhỏ
Hình 2.1: (a) Cài đặt cho việc thu được flow GT sử dụng kết cấu huỳnh quang ẩn trong đó bao gồm chiếu sáng được điều khiển bằng máy tính để chuyển đổi giữa tia cực tím (UV) và áng sáng trong vùng nhìn thấy được Nó cũng chứa cả các giai đoạn chuyển động cho cả máy ảnh và các cảnh (b-d) Cài đặt chiếu sáng trong vùng nhìn thấy (e-g) Cài đặt chiếu sáng trong vùng tia UV (c và f) Ảnh độ phân giải cao được chụp bởi máy ảnh kỹ thuật số (d và g) Một phần ảnh được phóng to của ảnh (c) và (f) Kết cấu huỳnh quang cao tần trong các ảnh được chụp dưới ánh sáng UV (g) cho
Trang 26phép theo dõi chính xác, nhưng phần lớn sẽ không được nhìn thấy trong những bức
ảnh kiểm tra có độ phân giải thấp.
Trong cài đặt hiện tại, được biểu diễn tại hình 2.1 (a), chúng tôi sử dụng máyảnh Canon EOS 20D để chụp ảnh với kích thước 3504 x 2336 và đảm bảo không cóđiểm nào trong cảnh dịch chuyển quá 2 pixel từ một khung được chụp sang khung kếtiếp Chúng ta có được chuỗi kiểm tra bằng cách giảm độ phân giải (downsample) mỗibức ảnh thứ 40 xuống dưới mức ánh sáng nhìn thấy bằng một hệ số 6, khi đó kíchthước ảnh sẽ chỉ còn 584 x 388 pixel Bởi lấy mẫu mọi khung thứ 40, chuyển động cóthể lớn (lên tới 12 pixel giữa các khung trong dữ liệu đánh giá), mặc dù các khung đãđược giảm độ phân giải và chuyển động giữa mỗi cặp khung được chụp (captured) lànhỏ Ví dụ, sau khi giảm độ phân giải, chuyển động giữa bất kỳ cặp khung được chụpnào cũng chỉ rơi vào khoảng nhiều nhất là 1/3 pixel
Kể từ khi sơn huỳnh quang trở nên khả dụng trong các sự lựa chọn màu, màusắc của những đối tượng trong một cảnh giờ đây có thể được kết hợp chặt chẽ hơn.Bên cạnh đó, nó có thể được áp dụng cho một mô hình được phun sơn, nơi mà mỗigiọt có kích thước khoảng 1 – 2 pixel trong các bức ảnh có độ phân giải cao Do đó,các pixel nhận được khi quét ở vùng tần số cao sẽ ít được hiển thị trong các bức ảnh có
độ phân giải thấp Hình 2.1 (g) mô tả sơn huỳnh quang hiển thị rõ ràng trong các bứcảnh UV có độ phân giải cao (sơn huỳnh quang hấp thụ ánh sáng UV nhưng lại phát raánh sáng có bước sóng trong vùng quang phổ nhìn thấy) Nhờ đó, với cùng mộtphương pháp, các camera quang tác động chính xác đến những chi tiết ẩn có cùng màusắc với các cảnh
Flow GT được xác định bằng cách theo dõi các cửa sổ nhỏ trong chuỗi ban đầucủa những ảnh UV có độ phân giải cao Sử dụng SSD (Sum of Squared Difference –Tổng các sai phân bình phương) trên một cửa sổ kích thước 15 x 15, tương ứng vớimột bán kính cửa sổ nhỏ hơn 1,5 pixel trong những bức ảnh đã được giảm độ phângiải Hoạt động kiểm tra được thực hiện dựa theo thuật toán Brute-force cho khungtiếp theo bằng cách khởi tạo dựa trên khung trước đó Kết quả sẽ được kiểm tra chéocác chuỗi bao gồm cả pixel phía trước và sau nó để đạt được độ chính xác cao, thườngđược thực hiện kiểm tra trên 40 khung
Kiểm tra chéo xác định các khu vực ảnh bị che khuất, vùng chuyển động đượcđánh dấu “unknow” Tiếp theo, sử dụng thuật toán Lucas – Kanade để ước tính chuyểnđộng tập pixel của mỗi cửa sổ với độ chính xác khoảng 1/10 pixel (ví dụ, 1/60 pixeltrong các ảnh được giảm độ phân giải) Để giảm 6 lần độ phân giải trường chuyểnđộng, ta tìm các chế độ (mode) giữa 36 vector chuyển động khác nhau trong mỗi cửa
Trang 27sổ 6 x 6 bằng cách sử dụng cụm tuần tự Gán chuyển động trung bình của cụm để ướctính chuyển động của pixel trong trường chuyển động có độ phân giải thấp Những ảnhthử nghiệm được chụp dưới vùng ánh sáng nhìn thấy sẽ được giảm độ phân giải sửdụng một bộ lọc nhị thức
Bằng cách sử dụng sự hòa trộn của sơn huỳnh quang, các ảnh độ phân giải caođược giảm độ phân giải và chuỗi theo dõi các chuyển động nhỏ, ta có thể xác địnhđược GT chính xác tới từng tập ảnh, dày đặc cho một cảnh mềm
Trang 28Hình 2.2: Tập dữ liệu ảnh đánh giá bao gồm Army, Mequon, Schefflera và Wooden.
Với 4 chuỗi trong tập đánh giá hình 2.2 Army chứa một số các đối tượng chuyển động độc lập Mequon chứa chuyển động mềm và những vùng lớn ít kết cấu.
Schefflera chứa các cấu trúc mỏng, các bóng (shadow) và quá trình chuyển đổi
nền/trước nền với độ tương phản nhỏ Wooden chứa các đối tượng chuyển động cứng
với kết cấu nhỏ trong sự xuất hiện của các bóng (shadow)
Bên cạnh đó, cột ngoài cùng bên phải là một mã màu trực quan của Opticalflow Dấu gạch trên các trục biểu thị một đơn vị flow của một pixel; Chú ý rằng, độ
lớn flow là khá thấp trong Army (< 4 pixel), song lại khá cao trong 3 cảnh còn lại (lên tới 10 pixel) Tối đa chuyển động trong Army là khoảng xấp xỉ 4 pixel, trong khi 3 chuỗi còn lại là 10 pixel Tất cả các chuỗi này đều khác biệt với chuỗi Yosemite (hình
2.3) do có các vùng chuyển động lớn hơn, chuyển động mềm, những hiệu ứng trắcquang khác nhau như các bóng, sự phản chiếu và cấu trúc hình học chi tiết
Lợi ích chính tập dữ liệu này mang lại là nó chứa GT của các ảnh được chụpvới camera thật Do đó, nó có chứa các hiệu ứng trắc quang, các đặc tính kết cấu tựnhiên thực … Hạn chế chủ yếu của tập dữ liệu này là các cảnh mới chỉ là những cảnhtrong phòng thí nghiệm, không phải là các cảnh thế giới thực Nó cũng không có cácchuyển động mờ (blur) bởi phương thức dừng chuyển động khi chụp (capture)
Nhược điểm nữa của dữ liệu này là GT không khả dụng trong các khu vực cókiểm tra chéo thất bại, đặc biệt là tại các vùng bị che khuất trong một ảnh Dù GT kháchính xác (1/60 pixel) nhưng quy trình này vẫn không hoàn hảo, do sự sai số trên mộtphần nhỏ các pixel Phương pháp GT có thể bị lỗi và không chính xác Bởi vậy, ởphần sau sẽ mô tả dữ liệu ảnh thực tế tổng hợp với GT để đảm bảo sự chính xác tuyệtđối
Trang 292.2.2 Dữ liệu hình ảnh thực tế tổng hợp
Các cảnh nhân tạo được tạo ra từ đồ họa máy tính thường rất giống với cáccảnh thật Trong nghiên cứu Optical flow, dữ liệu tổng hợp có thể mang lại rất nhiềulợi ích Đặc biệt, nó cho phép toàn quyền kiểm soát quá trình dựng hình bao gồm cảnhững đặc tính vật chất của các đối tượng, trong khi vẫn cung cấp chính xác chuyểnđộng GT và đường biên các đối tượng
Hình 2.3: Ảnh dữ liệu tổng hợp, bao gồm Grove (a), Urban (b) và Yosemite (c).
Đề cập đến 3 chuỗi tổng hợp chứa trong tập đánh giá (hình 2.3) Grove chứa cái
nhìn cận cảnh cho một cái cây nhiều cành gần nhau với hiệu ứng thị sai và gián đoạn
chuyển động đáng kể Urban chứa các ảnh của một thành phố với sự gián đoạn chuyển
động đáng kể, vùng chuyển động lớn và một đối tượng chuyển động độc lập Ta dùng
chuỗi Yosemite để so sánh các thuật toán với nhau.
Trang 30So với GT tổng hợp đã có từ trước (chuỗi Yosemite) thì hai loại cảnh ngoài trời tổng hợp (Grove và Urban) phức tạp hơn Hình 2.3a là tập hợp các cảnh “tự nhiên” có
chứa phần ảnh bị che khuất khá phức tạp Cảnh này gồm một số ngẫu nhiên các thủtục được tạo ra từ đá và cây với sự dịch chuyển bề mặt và kết cấu mặt đất được chọnngẫu nhiên Bên cạnh đó, vỏ cây cũng có kết cấu 3D Các cây sở hữu một lượng nhỏcác chuyển động độc lập để “bắt chước” những chuyển động được tạo bởi gió Chuyểnđộng máy ảnh bao gồm chuyển động xoay và tịnh tiến 3D
Hình 2.3b là tập hợp các cảnh “thành thị” có chứa những tòa nhà được tạo rangẫu nhiên Các tòa nhà này được chọn ngẫu nhiên từ kết cấu quét (scanned); trongcảnh còn có những chiếc ô tô” chuyển động tự do Những cảnh này được tạo ra bằngcách sử dụng 3Delight Renderman [2] tại độ phân giải 640 x 480 pixel nhờ có tiagamma tuyến tính Ảnh được khử răng cưa, bắt chước hiệu ứng của các cảm biến cùngnhững khu vực hữu hạn Các khung trong những chuỗi tổng hợp này được tạo ra màkhông cần các chuyển động mờ Có cả bóng của các đối tượng trong ảnh, một trong số
đó không cố định do chuyển động độc lập của cây và xe Khuếch tán chủ yếu trên bềmặt, tuy nhiên các lá trên cây lại có thành phần phản xạ nhẹ và các xe có phản xạmạnh Một phần nhỏ của các bề mặt trong cảnh thành thị có một lượng nhỏ thành phầnphản chiếu (5%), điều này có nghĩa là sự phản chiếu các đối tượng khác sẽ bị mờ nhạttrên những bề mặt này
Các cảnh được dựng sử dụng xấp xỉ giá trị ảnh bị che khuất không gian xungquanh cho sự rọi sáng toàn cục [3] Xấp xỉ này chia tách sự rọi sáng thành tổng của cácthành phần trực tiếp và đa thải hồi (multiple-bounce); Giả định rằng sự rọi sáng đa thảihồi đủ cho mọi hướng, nó có thể được lấy xấp xỉ tại mỗi điểm bằng một tích số củaánh sáng đến và một nhân tố đã được tính toán bằng cách đo tỷ lệ của những tia không
bị chặn bởi các bề mặt khác xung quanh đó
GT đã được tính toán bằng cách sử dụng một shader (bề mặt) tùy chỉnh giúpchiếu ra chuyển động 3D của cảnh tương ứng với một hình ảnh cụ thể trên mặt phẳngảnh 2D Kể từ khi mỗi pixel độc lập có khả năng đại diện cho nhiều hơn một đốitượng; Hay hiểu đơn giản hơn, lấy mẫu điểm flow tại trung tâm của mỗi pixel có thểdẫn đến kết quả là vector dòng không ánh xạ chuyển động trội của một pixel Mặtkhác, áp dụng khử răng cưa với flow có thể khiến vector dòng trung bình của mộtpixel ánh xạ chuyển động thật của bất kỳ đối tượng nào trong pixel đó Thay vào đó,chúng ta nhóm các vector dòng trong mỗi pixel và lựa chọn một vector dòng từ cụmchi phối: Các trường flow ban đầu được tạo ra tại 3 độ phân giải, nên có tới 9 vectordòng để lựa chọn Những vector chuyển động này được nhóm thành 2 cụm với thuậttoán k-mean Thuật toán k-mean được khởi tạo từ các vector gần và xa nhất với flowtrung bình của một pixel, được đo bằng cách sử dụng các điểm cuối vector dòng Sau