Công nghệ thông tin & Cơ sở toán học cho tin học<br />
<br />
MỘT GIẢI PHÁP THỰC HIỆN BẢN ĐỒ SAI LỆCH CỦA ẢNH<br />
CAMERA KÉP CÓ MẬT ĐỘ DÀY ĐẶC ỨNG DỤNG<br />
CHO ẢNH 3D VÀ BẢN ĐỒ ĐỘ SÂU<br />
Đoàn Văn Tuấn*, Bùi Trung Thành<br />
Tóm tắt: Bản đồ sai lệch là một trong các thông số rất quan trọng trong thị giác<br />
nổi (stereo vision). Từ thông tin bản đồ sai lệch sẽ xác định được ảnh 3D và bản đồ<br />
độ sâu của ảnh. Đã có nhiều thuật toán đề xuất, trong đó thuật toán BP (Belief<br />
propagation) đã được nhiều nhà khoa học nghiên cứu và cải tiến. Đây là thuật toán<br />
suy diễn gần đúng dựa trên mô hình trường ngẫu nhiên Markov với tối ưu toàn cục<br />
cho độ tin cậy cao. Hầu hết các thuật toán BP cải tiến đều lấy điểm khớp ban đầu tại<br />
điểm trên cùng bên trái của ảnh để lan truyền tin cậy xác định bản đồ sai lệch.<br />
Trong bài báo này chúng tôi đề xuất một phương pháp cải tiến mới cho thuật toán<br />
BP, điểm khớp xuất phát ban đầu là điểm trung tâm của ảnh camera kép, sau đó,<br />
thực hiện lan truyền tin cậy để xác định bản đồ sai lệch. Điểm khớp trung tâm được<br />
xác định bằngthuật toán cục bộ CT (Census transfrom). Với phương pháp đề xuất<br />
này cho kết quả thực hiện bản đồ sai lệch có tin cậy cao hơn và hiệu năng thực hiện<br />
nhanh 2,5 lần so với thuật toán BP tiêu chuẩn.<br />
Từ khóa: Bản đồ sai lệch, Thị giác nổi nổi, Lan truyền tin cậy, Biến đổi kiểm kê, Camera kép, Bán toàn cục.<br />
<br />
1. MỞ ĐẦU<br />
Thị giác nổi (stereo vision) là vấn đề rất<br />
quan trọng trong thị giác máy (computer<br />
vision) [1]. Hệ thống stereo vision có<br />
nhiệm vụ nhận dạng, xác định khoảng cách<br />
từ camera đến vật và tái tạo vật. Stereo<br />
vision được ứng dụng rộng rãi trong nhiều<br />
lĩnh vực như: công nghiệp, y khoa, giải trí,<br />
ôtô tự hành và đặc biệt trong robotics. Bản<br />
đồ sai lệch là thông số rất quan trọng của<br />
stereo vision, đặc biệt ứng dụng cho<br />
robotic thì bản đồ sai lệch của ảnh camera Camera Camer<br />
kép có mật độ dầy đặc (dense) đã được trái a phải<br />
nhiều nhà khoa học nghiên cứu [2], camera<br />
kép như hai mắt của robot. Ảnh camera<br />
kép là hai ảnh cùng chụp một cảnh với góc Hình 1.Mô hình ảnh camera kép.<br />
nhìn khác nhau như hình 1. Hầu hết các<br />
thuật toán xác định bản đồ sai lệch đều phải tự cân bằng giữa tốc độ thực hiện và độ tin<br />
cậy, để thực hiện tốt được hai việc này là rất khó. Các thuật toán đều phải dựa trên một mô<br />
hình cụ thể. Một trong các mô hình là mô hình trường ngẫu nhiên Markov (MRFs). Mô<br />
hình trường ngẫu nhiên Markov sẽ tạo ra các thuật toán suy diễn [3] có thể thực hiện bản<br />
đồ sai lệch tại các vùng ảnh bị che khuất, độ sâu thay đổi và đồng nhất. Một trong các<br />
thuật toán suy diễn gần đúng là thuật toán BP (Belief Propagation).<br />
Thuật toán BP thực hiện dựa trên các vòng lặp và cho độ tin cậy cao đối với ảnh<br />
camera kép có mật độ dầy đặc. Tuy nhiên, thuật toán BP có nhược điểm là độ phức tạp của<br />
tính toán cao và yêu cầu bộ nhớ lớn. Để khắc phục nhược điểm này cần phải giảm độ phức<br />
tạp của tính toán, giảm yêu cầu về bộ nhớ và xử lý song song, tuy nhiên, đều phải trả giá<br />
về độ tin cậy. Các thuật toán BP nâng cao được thực hiện song song trên nền hệ thống<br />
<br />
<br />
100 Đ. V. Tuấn, B. T. Thành, “Một giải pháp thực hiện bản đồ … ảnh 3D và bản đồ độ sâu.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
nhúng GPU [4] hay FPGA [5]. Đa số các thuật toán BP cải tiến đều thực hiện trên cấu trúc<br />
ảnh dạng lưới với 4 kết nối cho một điểm ảnh.<br />
Tác giả Sun[6] đã biểu diễn BP dùng suy diễn MAP được coi là thuật toán BP chuẩn.<br />
Tác giả Felzenszwalb[7] đã đề xuất 3 phương pháp khắc phục nhược điểm của thuật toán<br />
BP. Thứ nhất là dùng tối thiểu cho hàm chi phí đã giảm thời gian tính toán từ O(L2) xuống<br />
O(L), thứ hai là chia ảnh thành hai phần tương ứng với vòng lặp chẵn và vòng lặp lẻ điều<br />
này mang lại ưu điểm là giảm được bộ nhớ lưu trữ, thứ ba là chia thô và làm mịn điều này<br />
đã giảm được số vòng lặp và bộ nhớ yêu cầu tuy nhiên phải trả giá cho độ chính xác. Tác<br />
giả Li Zhang[8] đề xuất bổ xung tham số ngưỡng cho hàm chi phí, việc làm này cũng<br />
mang lại giảm không gian tìm kiếm đo đó cũng nâng cao được tốc độ. Tác giả Yu-Cheng<br />
Tseng[9] đã đề xuất một giải pháp nhằm giảm bộ nhớ bằng cách chia ảnh thành các khối<br />
độc lập và thực hiện BP riêng từng khối, phương pháp này có ưu điểm là thực hiện nhanh<br />
nhưng độ tin cậy giảm. Để khắc phục nhược điểm này tác giả Chia [10] đã đề xuất như<br />
mỗi khối sẽ được lưu trữ các thông tin của các điểm đường bao của khối do vậy nó cần bổ<br />
xung bộ nhớ cho các thông tin đường bao. Để giảm yêu cầu bộ nhớ cho thông tin đường<br />
bao, tác giả Chao[11] đã đề xuất là tái sử dụng thông tin đường bao nhưng độ phức tạp của<br />
tính toán tăng lên. Tác giả Yang[12] đề xuất giải pháp giảm bộ nhớ bằng cách cố định<br />
không gian sai lệch cho việc chia thô tới mịn.<br />
Đặc điểm chung của các giải pháp cải tiến là điểm khớp xuất phát ban đầu tại vị trí<br />
điểm trên cùng bên trái của ảnh camera kép để lan truyền tin cậy, do đó, khi điểm ảnh<br />
camera kép ban đầu không khớp nó dẫn đến yêu cầu năng lượng chi phí lớn và độ chính<br />
xác không cao. Để khắc phục nhược điểm này, chúng tôi đề xuất một giải pháp mới, điểm<br />
ảnh khớp xuất phát ban đầu là điểm khớp trung tâm của ảnh camera kép được xác định<br />
theo thuật toán CT (Census transform) và lan truyền tin cậy đồng thời theo bốn hướng<br />
dùng xử lý song song. Thật toán CT có hàm biến đổi mạnh và không phụ thuộc cường độ<br />
ánh sang của ảnh [13].<br />
Phần còn lại của bài báo được tổ chức như sau: phần 2 trình bày một số kiến thức liên<br />
quan đến thuật toán thực hiện bản đồ sai lệch như BP và CT. Phần 3 đề xuất thuật toán lan<br />
truyền tin cậy kết hợp biến đổi kiểm kê CTBP. Kết quả thực nghiệm đưa ra trong phần 4;<br />
Kết luận được cho trong phần 5.<br />
2. CÁC NGHIÊN CỨU LIÊN QUAN<br />
Bảng 1 sau đây liệt kê một số kí hiệu được sử dụng trong bài báo này.<br />
Bảng 1. Các kí hiệu và định nghĩa của nó.<br />
Kí hiệu Định nghĩa<br />
G Mô hình đồ thị biểu diễn bản đồ sai lệch của ảnh stereo camera.<br />
V Tập các nút trên mô hình đồ thị (nút biểu diễn sự sai lệch của cặp ảnh<br />
tương đồng trong ảnh stereo camera).<br />
E Tập các cạnh trên mô hình đồ thị (cạnh biểu diễn năng lượng chi phí<br />
cuat nút với các nút lân cận của nó).<br />
i,j Biểu diễn nút thứ i và nút lân cận i.<br />
Xi Biến ngẫu nhiên của nút i.<br />
xi Sự chuẩn hóa của Xivà Xi là không gian trạng thái của xi (xiϵ Xi)<br />
X Biến ngẫu nhiên liên kết x.<br />
x Sự chuẩn hóa các giá trị mô hình đồ thị trong không gian X<br />
p(x) Xác xuất hậu nghiệm (posterior) MAP.<br />
i (x i ) Xác suất nút i.<br />
<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số 51, 10 - 2017 101<br />
Công nghệ thông tin & Cơ sở toán học cho tin học<br />
<br />
( xi , x j ) Xác suất nút i với nút j lân cận nút i.<br />
E(x) Năng lượng chi phí<br />
D(xi) Hàm năng lượng chi phí cho nút i<br />
V ( xi , x j ) Hàm năng lượng chi phí giữa nút i và nút j lân cận<br />
mit j ( x j ) Thông điệp chuyển từ nút i sang nút lân cận j.<br />
bj (x j ) Độ tin cậy nút j<br />
c Tỉ lệ tăng của hàm nhẵn<br />
d Ngưỡng dừng tăng của hàm nhẵn<br />
E(i)\j Tập các nút i ngoài trừ nút j.<br />
dC(x,y) Bản đồ sai lệch thực hiện<br />
dT(x,y) Bản đồ sai lệch mẫu<br />
2.1. Thuật toán BP<br />
Thuật toán BP là thuật toán suy diễn lặp gần đúng dựa trên trường ngẫu nhiên Markov<br />
[3]. Xét mô hình trường ngẫu nhiên Markov (MRF) như hình 2, trong đó, G = (V, E), x=<br />
(xi)iϵV và X = (Xi)iϵV. Xác suất hậu nghiệm (posterior) MAP được xác định là:<br />
p( x) ( xi ) ( xi , x j ) (1)<br />
iV iV jV / i<br />
<br />
Từ phương trình 1 chúng ta xác định được MAP (maximum a posterior) thông qua<br />
phương pháp tích cực đại (max-product). Phương pháp tích cực đại tương đương với<br />
phương pháp tổng cực tiểu (min- sum). Đối với phương pháp tổng cực tiểu chúng ta đi tìm<br />
năng lượng chi phí cho việc chuyển thông điệp giữa các nút từ đó chúng ta sẽ tìm cách tối<br />
thiểu hóa năng lượng chi phí.<br />
E ( p( x)) log ( xi ) log ( xi , x j ) (2)<br />
iV i , jE<br />
Chúng ta đơn giản E(p(x)) thành E(x), khi đó, hàm năng lượng được viết:<br />
E ( x) D( xi ) V (x , x ) i j (3)<br />
iV i , jE<br />
Trong thị giác nổi thì các nút tương ứng là độ sai lệch và hàm năng lượng chi phí của<br />
cặp nút đến các điểm lân cận dựa trên sự khác nhau giữa các nút. Do vậy hàm:<br />
V ( xi , x j ) V ( xi x j ) (4)<br />
E ( x) D( xi ) V (x x ) i j (5)<br />
iV i , jE<br />
Thông điệp cập nhật tại vòng lặp t được xác định là:<br />
mit j ( x j ) min(V ( xi x j ) Di ( xi ) mst 1i ( xi )) (6)<br />
xi<br />
sE (i )\ j<br />
<br />
Sau T vòng lặp thì độ tin cậy của mỗi nút là:<br />
T<br />
bj ( x j ) Dj ( f j ) m<br />
iN ( j )<br />
i j (x j ) (7)<br />
<br />
Nút x*j được lựa chọn và xác định theo công thức:<br />
<br />
x*j arg min b j ( x j ) (8)<br />
<br />
<br />
<br />
102 Đ. V. Tuấn, B. T. Thành, “Một giải pháp thực hiện bản đồ … ảnh 3D và bản đồ độ sâu.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Thông thường hàm năng lượng chi phí nhẵn được xác định theo mô hình tuyến tính.<br />
V ( xi x j ) min(c xi x j , d ) (9)<br />
Khi đó thông điệp cập nhật được xác định là:<br />
mit j ( x j ) min(min(c xi x j , d ) Di ( xi ) mst 1i ( xi )) (10)<br />
xi<br />
sE ( i )\ j<br />
<br />
2.2. Thuật toán CT<br />
Thuật toán CT là thuật toán biến đổi<br />
kiểm kê cục bộ không tham số, nó không<br />
phụ thuộc vào điều kiện ánh sáng của ảnh<br />
[13]. Nguyên lý hoạt động của CT là biến<br />
đổi mỗi điểm ảnh thành một chuỗi bít có<br />
độ dài N bít với kiến trúc không gian cục<br />
bộ. Đối với mỗi điểm ảnh lân cận ngoại<br />
trừ điểm trung tâm sẽ biến đổi tương ứng<br />
thành một bít trong chuỗi N bít theo<br />
ngưỡng nếu giá trị cường độ (intensity) bít Hình 2. Mô hình MRF.<br />
lân cận lớn hơn giá trị cường độ bít trung<br />
tâm thì tương ứng với bít bằng 1 ngoài ra<br />
thì bít bằng 0.<br />
<br />
<br />
Chuỗi bít<br />
Khoảng cách<br />
Hamming<br />
CT<br />
<br />
<br />
<br />
<br />
Hình 3. Biến đổi CT với cửa sổ 3x3 và khoảng cách Hamming.<br />
Hình 3 mô tả thuật toán CT với cửa sổ 3x3, giá trị cường độ điểm trung tâm là 30. Các<br />
điểm lân cận có giá trị lớn hơn 30 thì tương ứng với bít bằng 1 ngoài ra thì bít bằng 0. Khi<br />
so sánh chuỗi bít giữa ảnh trái và ảnh phải, đếm số bít khác nhau hai chuỗi bít được gọi là<br />
khoảng cách Hamming và được tính theo công thức (11). Hai điểm ảnh của hai ảnh trái và<br />
phải có khoảng cách Hamming nhỏ nhất thì được chọn là khớp nhau.<br />
( x0 , y0 ) arg min Hamming(TL ( x, y ), TR ( x d , y )) (11)<br />
( x, y )<br />
<br />
trong đó, TL(x,y) và TR(x,y) là các chuỗi bít của điểm ảnh khớp trong ảnh trái và ảnh phải<br />
của ảnh camera kép.<br />
3. ĐỀ XUẤT THUẬT TOÁN KẾT HỢP<br />
3.1. Mô tả thuật toán đề xuất<br />
Khi điểm xuất phát ban đầu để lan truyền tin cậy không khớp dẫn đến yêu cầu chi phí<br />
năng lượng lớn và độ tin cậy thấp khi thực hiện bản đồ sai lệch như hình 4.d.<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số 51, 10 - 2017 103<br />
Công nghệ<br />
nghệ thông tin & C<br />
Cơ<br />
ơ sở<br />
s toán học<br />
học cho tin học<br />
<br />
<br />
<br />
<br />
(a) (b) (c) (d)<br />
Hình 4. Ảnh hưởng<br />
h ởng của điểm khớp ban đầu: (a) Ảnh camera kép trái, (b) Ảnh camera kép<br />
ph<br />
phải,<br />
ải, (c)Bản đồ sai lệch mẫu vvàà (d) Bản<br />
Bản đồ sai lệch.<br />
lệch<br />
Đểể khắc phục như<br />
nhượcợc điểm này, chúng tôi đđềề xuất điểm khớp xuất phát llàà đi điểm<br />
ểm khớp<br />
trung tâm ccủa<br />
ủa ảnh camera kép. Điểm khớp trung tâm của ảnh camera kép đđư ợc xác định<br />
ược<br />
dùng phương pháp bi biến<br />
ến đổi kiểm kkêê CT. Sau khi đđãã xác định<br />
ịnh đđược<br />
ợc điểm khớp trung tâm,<br />
chúng tôi chia ảnh ththành<br />
nh 4 phần<br />
phần và<br />
và coi đi<br />
điểm<br />
ểm khớp trung tâm llàà đi<br />
điểm<br />
ểm khớp ban đầu để lan<br />
truyền tin cậy cho mỗi phần. Tại mỗi phần, ảnh camera kép đđư<br />
truyền ược<br />
ợc chia thô tới mịn mức 2<br />
như hhình<br />
ình 5, quá trình này làm gi giảm<br />
ảm số lư<br />
lượng<br />
ợng ảnh đi 4 lần. Khi chia thô tới mịn mức 2 ththìì<br />
năng lư<br />
lượng<br />
ợng chi pphí<br />
hí cho mmỗiỗi mức chia đđược<br />
ợc tính theo công thức (12)<br />
*<br />
E ( x) D( x )<br />
i[1,4]<br />
i (12)<br />
<br />
Thông đi điệp<br />
ệp đđư<br />
ược<br />
ợc lan truyền tin cậy giữa các nút nh<br />
nhưư hình<br />
hình 6 và đồng<br />
ồng thời thực hiện BP<br />
thực<br />
cho ccảả bốn phần nhờ vvàoào ccấu<br />
ấu trúc xử lý song song nh<br />
nhưư ph<br />
phần<br />
ần cứng GPU vvàà phphần<br />
ần mềm<br />
CUDA.<br />
<br />
<br />
<br />
<br />
Hình 5. Chia thô ttới<br />
ới mịn mức 2. 6. Sơ đđồ<br />
Hình 6. ồ thông điệp lan truyền.<br />
3.2. Chương tr trình<br />
ình đ đề xu<br />
xuấất<br />
Thuậtt toán đ<br />
Thuậ đềề xu<br />
xuấtt CTBP ((Census<br />
Census Transform Belief PropagationPropagation))<br />
u vào: Ảnh<br />
Đầầu Ảnh camera kép có đđộ ộ phân gigiảảii cao (m, n, d).<br />
Đầầu ra:: Bả<br />
u ra Bản n đồ<br />
đ sai llệchch ảnhnh camera kép có m mậtt độ<br />
đ dầy y đặ<br />
đặcc (m, n).<br />
Các bưbướ ớcc thự<br />
thựcc hi<br />
hiệnn:<br />
1. Tìm điểm<br />
đi m khớp<br />
kh p trung tâm ảnh ảnh camera kép dùng thu thuậtt toán CT.<br />
2. T<br />
Từừ điểm<br />
đi m khớp<br />
kh p trung tâm, chia ảnh ảnh thành 4 ph phầầnn và lấy<br />
l y đi<br />
điểểm<br />
m kh<br />
khớ ớp<br />
p trung tâm là điđiểm<br />
m<br />
kh p ban đầ<br />
khớp đầuu lan truy<br />
truyềnn tin ccậậyy cho mmỗỗii ph<br />
phần n như hhìnhình 6.<br />
3. Thực<br />
Th c hiệhiệnn lan truy<br />
truyềnn tin ccậy y cả<br />
cả 4 phầ<br />
phầnn đđồng ng th<br />
thờii như sau:<br />
4. Đặặtt thông điệp<br />
đi p = 0.<br />
5. Thực<br />
Th c hiệhiệnn chia thô ttớớii m<br />
mịn n mứ<br />
mứcc 2 như hhình ình 5.<br />
6. Tính toán năng lư lượ<br />
ợng<br />
ng chi phí ttạii mỗi<br />
m i ph<br />
phần n theo công th thứcc (12).<br />
7. Cậập<br />
p nhật<br />
nh t thông đi điệệp<br />
p lan truyền<br />
truy n tin ccậyy xu<br />
xuấtt phát ttừừ điểm<br />
đi m khkhớpp ban đđầầu<br />
u theo công thứ<br />
thứcc (7).<br />
8. Tính toán đđộ ộ tin cậ<br />
cậyy ccủaa nút theo công th thứứcc (8).<br />
9. Nút x*j được<br />
được lựa chọn vvàà xác định định theo công thức (9).<br />
10. Tính ttổng<br />
ổng năng lư<br />
lượng<br />
ợng chi phí theo công thức (6).<br />
<br />
<br />
104 Đ. V. Tu<br />
Tuấn,<br />
ấn, B. T. Thành, “Một<br />
Thành, “Một giải pháp thực hiện bản đồ … ảnh 3D vvà<br />
à bản sâu.””<br />
bản đồ độ sâu.<br />
Nghiên ccứu<br />
ứu khoa học công nghệ<br />
<br />
4. KẾT<br />
KẾT QUẢ THỰC NGHIỆM MÔ PHỎNG V<br />
VÀÀ TH<br />
THẢO<br />
ẢO LUẬN<br />
LU ẬN<br />
4.1. D<br />
Dữ<br />
ữ liệu thực nghiệm<br />
Hệệ thống thực nghiệm nh như<br />
ư hình<br />
hình 7 vvới<br />
ới cấu hhình<br />
ình PC được<br />
ợc mô tả trong bảng 2 vvà ảnh<br />
camera kép trong ttập<br />
ập dữ liệu kiểm thử [14] đđược<br />
ợc mô tả trong bảng 3.<br />
<br />
<br />
<br />
<br />
7 H<br />
Hình 7. Hệệ thống thực nghiệm<br />
nghiệm.<br />
Bảng<br />
ảng 2.2. Mô ttả<br />
ả cấu hình<br />
hình PC Destop<br />
Destop..<br />
Ph<br />
Phầnần cứng Ph<br />
Phần<br />
n mềm<br />
mềm<br />
CPU RAM Card màn hình Hệệ điều hành<br />
hành Phần<br />
Phần mềm ứng dụng<br />
Intel 8GB Geforce GTX750 Ti Window 8.1 QT Creator 5.4<br />
core i7 Bộ<br />
ộ nhớ trong: 2GB 64 bít OpenCV 3.0<br />
Core: 460 nhân Visual Studio 2013<br />
BUS: 128 bít CUDA<br />
4.2. Ch<br />
Chỉỉ số đánh giá độ tin cậy RMSE<br />
Để đánh giá độ tin cậy của kết quả thực nghiệm, chúng tôi sử dụng tham số RMSE<br />
Để<br />
root mean squared error: sai ssố<br />
(root ố toàn<br />
toàn phương trung bbình<br />
ình)) theo công ththức<br />
ức (13). Tham số<br />
RMSE càng nh nhỏ<br />
ỏ ccàng<br />
àng ttốt,<br />
ốt, điều đó chứng tỏ kết quả bản đồ sai lệch thực hiện đđược ợc ccàng<br />
àng<br />
gần<br />
ần vvới<br />
ới bản đồ sai lệch mẫu.<br />
=( ∑ , | ( , )− ( , ))| ) (13)<br />
ảng 3. Tập<br />
Bảng ập dữ liệu kiểm thử<br />
thử..<br />
Ký Độộ sai Bản<br />
Bản đồ sai lệch<br />
Tên ảnh Kích th<br />
thức<br />
ức Ảnh trái Ảnh phải<br />
hi<br />
hiệu<br />
ệu lệch<br />
ệch mẫu<br />
m<br />
<br />
<br />
#1 Baby 620x555 300<br />
<br />
<br />
<br />
<br />
Tạp<br />
ạp chí Nghi<br />
Nghiên<br />
ên cứu<br />
cứu KH&CN quân<br />
uân sự,<br />
sự, Số 51, 10 - 2017<br />
2017 105<br />
Công nghệ<br />
nghệ thông tin & C<br />
Cơ<br />
ơ sở<br />
s toán học<br />
học cho tin học<br />
<br />
<br />
<br />
#2 Aloe 641x555 270<br />
<br />
<br />
<br />
<br />
#3 Cloth 626x555 290<br />
<br />
<br />
<br />
<br />
Flower<br />
#4 656x555 251<br />
pots<br />
<br />
<br />
<br />
<br />
#5 Bowling 665x555 240<br />
<br />
<br />
<br />
<br />
#6 Book 695x555 200<br />
<br />
<br />
4.3. K<br />
4.3 Kết<br />
ết quả thực nghiệm vvà à thảo<br />
thảo luận<br />
Đểể đánh giá hiệu quả của thật toán đề xuất, chúng tôi đđưa<br />
ưa ra m<br />
một<br />
ột số thực nghiệm ccơ<br />
ơ bbản<br />
ản<br />
và so sánh kkết<br />
ết quả với kết quả của<br />
ủa phương<br />
phương pháp đưđược<br />
ợc mô tả trong [7]. Trong thực nghiệm<br />
nghiệm,,<br />
chúng tôi ssử<br />
ử dụng đa dạng ảnh camera kép để kiểm thử với độ phức tạp khác nhau nh nhưư<br />
bảng<br />
ảng 3 với cấu hhình<br />
ình PC nh<br />
nhưư bảng<br />
bảng 2.<br />
Bảng 4. Ch<br />
Bảng Chỉỉ số đánh giá sai số to<br />
toàn<br />
àn phương trung bbình<br />
ình RMSE<br />
RMSE..<br />
Ảnh Thu<br />
Thuậtật toán BP Thuật toán đề xuất<br />
Thuật<br />
#1 0.7200 0.7150<br />
#2 1,0921 1,0568<br />
#3 2.2737 1.5560<br />
#4 3.05911 2.9021<br />
#5 4.7338 3.9676<br />
#6 5,0250 3,3840<br />
Kết<br />
ết quả thử nghiệm với 6 mẫu ảnh thu đđư ược<br />
ợc bản đồ sai lệch nhnhưư hình<br />
hình 8 và đánh giá đđộ<br />
ộ<br />
tin ccậy<br />
ậy của thuật toán đề xuất với thuật toán BP đư được<br />
ợc thể hiện trong bảng 4. Để đánh giá<br />
hiệu<br />
ệu quả của thuật toán đề xuất, chúng tôi thực hiện bản đồ sai lệch của 6 mẫu ảnh theo<br />
thuật toán BP nh<br />
thuật như ư hhình<br />
ình 9. B ảng 5 thể hiện hiệu năng thực hiện của thuật toán đề xuất với<br />
Bảng<br />
thuật toán BP dựa tr<br />
thuật trên<br />
ên hhệệ thống thực<br />
thực nghiệm đđãã mô tả<br />
tả trong bảng 2. Bảng 4 cho thấy thuật<br />
toán đđềề xuất có độ tin cậy cao hhơn ơn thu<br />
thuật<br />
ật toán BP. Đối với các ảnh #1, #2 vvàà #3 có bbềề mặt<br />
đơn gigiản<br />
ản sẽ cho kết quả RMSE thấp hhơn ơn các ảnh #4, #5 vvàà #6 có bbềề mặt ảnh phức tạp.<br />
Điều nnày<br />
Điều ày lý gi<br />
giải,<br />
ải, đối với các ảnh camera kép có bề mặt đđơn ơn gi<br />
giản<br />
ản th<br />
thìì sẽ<br />
sẽ thu được<br />
đ ợc bản đồ sai<br />
lệch<br />
ệch gần bản đồ sai lệch mẫu.<br />
<br />
<br />
106 Đ. V. Tu<br />
Tuấn,<br />
ấn, B. T. Thành, “Một<br />
Thành, “Một giải pháp thực hiện bản đồ … ảnh 3D vvà<br />
à bản sâu.””<br />
bản đồ độ sâu.<br />
Nghiên cứu khoa học công nghệ<br />
<br />
<br />
<br />
<br />
(a) (b) (c) (d) (e) (f)<br />
Hình 8. Bản đồ sai lệch dùng thuật toán đề xuất: trong đó (a), (b), (c), (d), (e) và (f) là<br />
bản đồ sai lệch tương ứng của các ảnh #1, #2, #3, #4, #5 và #6.<br />
Bảng 5. Đánh giá hiệu năng thực hiện (ms).<br />
Ảnh Thuật toán BP Thuật toán đề xuất<br />
#1 439 182<br />
#2 457 185<br />
#3 442 182<br />
#4 473 187<br />
#5 478 188<br />
#6 494 191<br />
Bảng 5 cho thấy, đối với các ảnh kiểm thử có kích thước tương đương nhau thì thời<br />
gian thực hiện hầu như không thay đổi khi thực hiện cùng một thuật toán. Điều này cho<br />
thấy hiệu năng thực hiện bản đồ sai lệch không phụ thuộc vào độ phức tạp của ảnh mẫu<br />
mà chỉ phụ thuộc vào độ phân giải của ảnh. Ngoài ra, bảng 5 còn thể hiện sự hiệu năng của<br />
thuật toán đề xuất tăng khoảng 2,5 lần so với thuật toán BP.<br />
<br />
<br />
<br />
<br />
(a) (b) (c) (d) (e) (f)<br />
Hình 9. Bản đồ sai lệch dùng thuật toán BP: trong đó (a), (b), (c), (d), (e) và (f) là bản đồ<br />
sai lệch tương ứng của các ảnh #1, #2, #3, #4, #5 và #6.<br />
Các kết quả thực nghiệm được thực hiện trên phần mềm mở OpenCV 3.0. Ngoài ra,<br />
hiện nay còn có phần mềm cũng thực hiện đánh giá bản đồ sai lệch như Matlab [15]. Cả<br />
hai phần mềm này đều là công cụ tốt cho đánh giá bản đồ sai lệch tuy nhiên OpenCV khó<br />
cho người mới tiếp cận nhưng đây là phần mềm mở còn Matlab dễ cho người mới tiếp cận<br />
với những Toolbox có sẵn nhưng phải trả phí khi sử dụng.<br />
5. KẾT LUẬN<br />
Trong bài báo này chúng tôi đề xuất giải pháp cải tiến thuật toán BP [7]. Với những<br />
ảnh camera kép kiểm thử [14] đa dạng về độ phức tạp đã cho kết quả bản đồ sai lệch như<br />
hình 8. Đánh giá hiệu quả của thuật toán đề xuất so với thuật toán BP được thể hiện trong<br />
bảng 4 và bảng 5 trong đó bảng 4 thể hiện so sánh đánh giá độ tin cậy thông qua chỉ số<br />
RMSE còn bảng 5 thể hiện hiệu năng thực hiện thông qua hệ thống PC có cấu hình như<br />
bảng 2.<br />
Chúng tôi đề xuất giải pháp cải tiến thuật toán BP bằng giải pháp thay vì điểm khớp<br />
xuất phát lan truyền tin cậy tại điểm trên cùng bên trái của ảnh camera kép bằng điểm<br />
khớp trung tâm của ảnh. Điểm khớp trung tâm ảnh camera kép được xác định bằng thuật<br />
toán CT. Thuật toán đề xuất cho độ tin cậy cao và hiệu năng thực hiện tăng khoảng 2,5 lần<br />
so với thuật toán BP.<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số 51, 10 - 2017 107<br />
Công nghệ thông tin & Cơ sở toán học cho tin học<br />
<br />
Hướng nghiên cứu tiếp theo của bài báo là tìm giải pháp nâng cao xác định điểm khớp<br />
trung tâm của ảnh camera kép để tối ưu hóa năng lượng chi phí khi xác định bản đồ sai<br />
lệch và ứng dụng thuật toán đề xuất vào thị giác robotics. Ngoài ra, còn đánh giá hiệu quả<br />
thuật toán đề xuất dùng phần mềm Matlab.<br />
PHỤ LỤC<br />
Định nghĩa: Khoảng cách Hamming D(x, y) giữa hai véc tơ x,y € F(n) là các hệ số mà<br />
chúng khác nhau. F là một trường hữu hạn<br />
Định luật: D thỏa mãn các đều kiện sau:<br />
1. D(x,y) ≥ 0 và D(x,y) = 0 nếu và chỉ nếu x = y.<br />
2. D(x,y) = D(y,x).<br />
3. D(x,z) ≤ D(x,y) + D(y,z) với mọi y. [16]<br />
TÀI LIỆU THAM KHẢO<br />
[1]. R. Szeliski, "Computer Vision: Algorithms and Applications," Springer-Verlag New<br />
York, 2010.<br />
[2]. M. Stefano, “Stereo vision: Algorithms and Applications,” University of Bologna,<br />
2012.<br />
[3]. A. Blake, P. Kohli, C. Rother, "Markov Random Fields for Vision and Image<br />
Processing," MIT Press, 2011.<br />
[4]. K. Zhang, J. B. Lu, Q. Yang, G. Lafruit, R. Lauwereins and L.V. Gool, “Real-Time<br />
and Accurate Stereo: A Scalable Approach with Bitwise Fast Voting on CUDA”,<br />
IEEE Transactions on Circuits and Systems for Video Technology, vol. 7, no. 21,<br />
2011, pp.867-879.<br />
[5]. S. Jin, J. Cho, X. D. Pham, K. M. Lee, S. K. Park, M. Kim and J. W. Jeon, “FPGA<br />
Design and Implementation of a Real-Time Stereo Vision System”, IEEE<br />
Transactions on Circuits and Systems for Video Technology, vol. 1, no. 20, 2010, pp.<br />
15-26<br />
[6]. Sun, Zheng, Shum, "Stereo matching using belief propagation," IEEE Trans. PAMI,<br />
pp. 787 -800, 2003.<br />
[7]. P. F. Felzenszwalb and D. P. Huttenlocher, "Efficient Belief Propagation for Early,"<br />
Proc. IEEE Int. Conf. Computer Vision and Pattern Recognition, vol. 1, no. 70, pp.<br />
261 - 267, 2004.<br />
[8]. L. Zhang and S. M. Seitz, "Parameter Estimation for MRF Stereo," Proc. IEEE Int'l<br />
Conf. Computer Vision and Pattern Recognition (CVPR '05), pp. 288 - 295, 20 - 25<br />
June 2005.<br />
[9]. N. C. a. T. C. Y. C Tseng, "Low Memory Cost Block - based Belief Propagations for<br />
Stereo Correspondence," 2007 IEEE International conference on Multimedia and<br />
Expo,pp. 1415 - 1418, 2 - 5 july 2007.<br />
[10]. C. K. Liang, C. C. Cheng, Y. C. Lai, L. G. Chen and H. H. Chen, "Hardware<br />
Efficient Belief Propagation," Proc. of IEEE Conf. Computer Vision and Pattern<br />
Recognition, pp. 80 - 87, 20 -25 June 2009.<br />
[11]. Y. C. Tseng and T. S. Chang, "Architecture Design of Belief Propagation for Real<br />
Time Disparity Estimation," IEEE Transaction on Circuits and Systems for Video<br />
Technology, vol. 11, no. 20, pp. 1555 - 1565, 2010.<br />
[12]. L. W. a. N. A. Q. Yang, "A Constant-sapce Belief Propagation Algorithm for Stereo<br />
Matching," IEEE Computer Society Conference on Computer Vision and Pattern<br />
<br />
<br />
108 Đ. V. Tuấn, B. T. Thành, “Một giải pháp thực hiện bản đồ … ảnh 3D và bản đồ độ sâu.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Recognition, pp. 1458-1465, 2010.<br />
[13]. Zabih, R. and Woodfill, J., "Non-Parametric Local Transforms for Computing Visual<br />
Correspondence," Proceedingsings of Third European Conference of Computer<br />
Vision, vol. 801, pp. 151 - 158, 1994.<br />
[14]. D. Scharstein and R. Szeliski. Middlebury benchmark.http://vision.middlebury.edu.<br />
[15]. Https://www.mathworks.com/help/vision/examples/depth-estimation-from-stereo-<br />
[16]. video.html<br />
H. Gopalakrishra Gadiyar and P. Padma, “A historical introduction to coding theory<br />
through Hamming’s work,” V. I. T University, Vellore, 2015<br />
ABSTRACT<br />
A SOLUTION TO IMPROVE DISPARITY MAP OF DENSE STEREO CAMERA<br />
APPLICATION 3D IMAGE AND DEPTH MAP<br />
Disparity map is one of the most important parameters of stereo vision. From<br />
disparity map we can derive 3D and deep map of pictures and objects. There are<br />
many proposed algorithms in which Belief Propagation (BP) has been studied and<br />
modified by many researchers. This is an approximation inference algorithm based<br />
on Markov Random Fields model with global optimization for high accuracy.<br />
Almost standard and modified BP algorithms have starting point is on the left-top of<br />
pictures to propagate believable messages in order to derive disparity map. In this<br />
paper, an advanced BP algorithm is proposed whereas the proposed algorithm with<br />
center pixel is started. The center pixel is determined by using global Census<br />
Tranform method. Then, believable messages around to derive disparity map are<br />
propagated. Simulation result on CPU and GPU show that this proposed method<br />
has 2.5 times fasster computing and higher reliability in compared with standard<br />
BP.<br />
Keywords: Disparity map, Stereo vision, Belief propagation, Census transform, Stereo camera, Semi-Global.<br />
<br />
Nhận bài ngày 05 tháng 9 năm 2017<br />
Hoàn thiện ngày 05 tháng 10 năm 2017<br />
Chấp nhận đăng ngày 25 tháng 10 năm 2017<br />
<br />
Địa chỉ: Trường Đại học Sư phạm Kĩ thuật Hưng Yên.<br />
*<br />
Email: tuandv.ute@gmail.com.<br />
<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số 51, 10 - 2017 109<br />