Tải bản đầy đủ (.docx) (13 trang)

Tiểu luận môn toán học cho khoa học máy tính ỨNG DỤNG LOGIC MỜ XỬ LÝ NHẬN DẠNG CHUYỂN ĐỘNG THỜI GIAN THỰC

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 (227.47 KB, 13 trang )

Đại học Quốc gia Thành phố Hồ Chí Minh
Đại học Công nghệ thông tin
------o0o------

ỨNG DỤNG LOGIC MỜ

XỬ LÝ NHẬN DẠNG CHUYỂN ĐỘNG
THỜI GIAN THỰC

Học viên:
MSHV:

Hồ Mạnh Khương
CH1301018

GVHD: PGS. TS. Đỗ Văn Nhơn

TP. Hồ Chí Minh, 1/2014


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn

Mục lục

2


HV: Hồ Mạnh Khương


I.

GVHD: PGS. TS. Đỗ Văn Nhơn

ĐẶT VẤN ĐỀ
Ngày nay, việc xử lý các dữ liệu hình ảnh thời gian thực đã là chuyện khơng cịn
xa lạ với con người. Nhiều thiết bị phần cứng và phần mềm ra đời hỗ trợ rất tốt việc
ghi và xử lý hình ảnh real-time. Tuy nhiên giá thành các thiết bị này cịn đắt (ví dụ:
Kinect…) và chỉ có ứng dụng ở một số lĩnh vực nhất định: chơi game qua cử động, sử
dụng trong các hê thống tự hành đắt tiền.

Để có thể đưa việc xử lý hình ảnh thời gian thực vào các thiết bị thấp hơn và rẻ
tiền hơn, nhiều nghiên cứu đã được đặt ra. Trong đó việc ứng dụng các thuật toán áp
dụng tư duy về logic mờ cho thấy kết quả khả quan và độ chính xác tương đối cao. Vì
vậy, ứng dụng logic mờ để cho ra một sản phẩm có chất lượng tương đương với các
sản phẩm camera tốc độ cao, nhưng chỉ chạy trên các phần cứng thấp và phổ thông
như webcam hoặc ứng dụng trên các hệ thống giám sát giá rẻ là hướng nghiên cứu
nhiều tiềm năng.

3


HV: Hồ Mạnh Khương

II.

GVHD: PGS. TS. Đỗ Văn Nhơn

LOGIC MỜ VÀ NHẬN DẠNG CHUYỂN ĐỘNG
1. Sơ lược về logic mờ

Khái niệm về logic mờ được giáo sư Lotfi Zadeh của trường đại học California - Mỹ

đề ra lần đầu tiên năm 1965. Cơng trình này thực sự đã khai sinh mộtngành khoa học mới
là lý thuyết tập mờ và đã nhanh chóng được các nhà nghiên cứu cơng nghệ mới chấp
nhận ý tưởng.
Một số kết quả bước đầu và hướng nghiên cứu tiếp theo góp phần tạo nên những sản
phẩm công nghiệp đang được tiêu thụ trên thị trường. Lý thuyết tập mờ ngày càng
phong phú và hoàn chỉnh, đã tạo nền vững chắc để phát triển logic mờ. Có thể
nói logic mờ (Fuzzy logic) là nền tảng để xâydựng các hệ mờ thực tiển.[3]
2. Xác định chuyển động trên đoạn video ghi hình sẵn
Đối với đoạn video được ghi sẵn, việc xác định chuyển động có phần đơn giản hơn
bởi input đầu vào là một chuỗi các khung hình. Việc so sánh và xác định thành phần
chuyển động là khá đơn giản, tuy nhiên chỉ có một vấn đề khó khăn là xử lý các đoạn
chuyển cảnh và phân biệt với các đoạn chuyển động[1].

4


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn

Sơ đồ hoạt động giải thuật xác định chuyển động trên đoạn video clip[1]
Đối với xử lý thời gian thực, chúng ta phải sử dụng một cách tiếp cận hơi khác do các
frame hình được dùng đối chiếu phải liên tục khơng ngắt quãng. Ta sử dụng cách tiếp cận
hơi khác sẽ được đề cập kĩ hơn ở phần sau.
3. Xác định chuyển động thời gian thực (real-time motion detection)
Ý tưởng của thuật giải nhận dạng chuyển động trong thời gian thực là xử lý khung
hình trước và so sánh độ hỗn loạn Gaussian, nhằm xử lý các thành phần nhiễu giữa
các frame hình với nhau.

Do đặc thù của hình ảnh chuyển về từ camera, 2 khung hình chụp cùng một sự vật
sẽ rất khác biệt nhau dù ở 2 thời điểm, ở cùng một vị trí màu sắc và sự vật khơng hề di
chuyển. Trước tiên ta đưa vào khung hình hiện tại với độ hỗn loạn hiện tại (I n 5


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn

tolerance) và độ hỗn loạn của khung hình liền trước đó (I p). Hệ số xác định độ chuyển
động được xác định bằng số thực Δ với trị 0 (khơng có cử động) và 1 (có cử động) và
Δ là số mờ. [2]

Hệ số xác định chuyển động Δ được dùng để đánh giá giá trị chuyển động (giá trị
hỗn loạn) θ(x,y,t) của pixel ở vị trí (x,y) vào thời gian t (để phân biệt với frame hình
trước ở t-1).

Tuy nhiên do hình ảnh tồn tại độ hỗn loạn nên ta khai báo trị số Ω là hằng số hỗn
loạn tối thiểu để pixel đó được xác định là có chuyển động.

RGB(x,y,t) là giá trị màu gồm 3 màu cơ bản là Red, Green, Blue ở vị trí pixel (x,y)
vào thời điểm t.

Xanh lá mạ

-> Mã hex: 99CC32 -> Mã Decimal: 10079282

Công thức đổi tách hệ màu từ mã decimal sang 3 mã RGB tương ứng như sau [4]:

Với \ là phép chia lấy phần nguyên và mod là phép modulo (chia lấy số dư).

Tương tự với ví dụ màu xanh lá mạ ở trên ta có:
Mã Decimal: 10079282 -> R=153, G=204, B=50
Ý tưởng khử nhiễu dựa trên pixel lân cận: một pixel có giá trị hỗn loạn và sẽ được cập
nhật giá trị độ hỗn loạn dựa vào giá trị của 4 pixel liền kề ở các vị trí (x-1,y), (x+1,y),
(x,y-1) và (x,y+1).

6


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn
(x,y-1)
(x-1,y)

I(x,y)

(x+1,y)

(x,y+1)

Vị trí pixel xác định giá trị hỗn loạn

Ví dụ minh họa khử nhiễu: (a) xác định vị trí chuyển động với Ω lớn, (b) xác định vị trí
chuyển động với giá trị Ω nhỏ, (c) khử nhiễu với Ω lớn, (d) khử nhiễu với Ω nhỏ

Giá trị cập nhật của I(x,y,t) sau khi được cập nhật sẽ tính được Δ(x,y,t) và so sánh
với Ω. Ma trận I(x,y,t) được lưu lại vào mảng và được sử dụng làm I(x,y,t-1) để so sánh
với frame sau.


7


HV: Hồ Mạnh Khương

III.

GVHD: PGS. TS. Đỗ Văn Nhơn

CHƯƠNG TRÌNH MINH HỌA

Giao diện chương trình
Chương trình được viết trên nền Visual Basic 6.0, giao diện đơn giản gồm các tùy chỉnh:


Bắt đầu / Kết thúc: để khởi chạy và ngưng chương trình.
Kích thước pixel: xác định lượng lọc pixel (*).
Độ nhạy: tùy chỉnh giá trị tolerance (Ω)
Tùy chỉnh kích thước pixel: nếu quét hết tất cả 640x480=307 200 pixel thì sẽ tốn
rất nhiều thời gian, vì vậy tùy chọn tùy chỉnh kích thước pixel sẽ lược bỏ bớt pixel.
Giá trị này có ý nghĩa là mỗi 2n (x và y) pixel sẽ xét pixel đó. Tức là với giá trị 20
sẽ chỉ có 307 200 / 20 / 2 = 768 pixel được xét.
8


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn

• Khi khởi chạy, chương trình sẽ tìm kiếm thiết bị camera trong máy, nếu có nhiều

hon 1 thiết bị, sẽ xuất hiện cửa sổ lựa chọn

Cửa sổ lựa chọn thiết bị
• Sau khi khởi chạy, chương trình sẽ lấy hình từ thiết bị ngoại vi, những khu vực có
chuyển động sẽ được đánh dấu xanh lá. Những khu vực nhiễu sẽ được đánh dấu
đỏ.
• Có thể tùy chỉnh giá trị kích thước pixel và độ lớn Ω trong khi đang chạy.

9


HV: Hồ Mạnh Khương

GVHD: PGS. TS. Đỗ Văn Nhơn

Giao diện chương trình khi chạy

IV.

KẾT LUẬN
Chỉ qua giới hạn về nội dung của bài tiểu luận khơng thể hồn tồn hồn thiện hết mọi

trường hợp có thể gặp phải. Tuy nhiên bài tiểu luận cũng đã cố gắng giải thích và đưa ra
minh họa cho logic mờ và chương trình ứng dụng có khả năng ứng dụng nhiều vào thực
tiễn.
Qua mơn học, bước đầu đã giúp hình thành các khái niệm căn bản và mở ra các
hướng nghiên cứu nâng cao về logic mờ, cũng như định hướng cho khả năng phát triển
lên đề tài thạc sĩ.
Kết quả đạt được:
10



HV: Hồ Mạnh Khương
-

GVHD: PGS. TS. Đỗ Văn Nhơn

Xây dựng hệ luật mờ xác định chuyển động.
Xây dựng chương trình nhận dạng cử động thời gian thực hoạt động khá hiệu quả.

Hướng phát triển:
-

Sử dụng GPU thay vì CPU như hiện tại để tính tốn nhằm nâng cao hiệu năng xử

-

lý.
Áp dụng cho các hệ thống camera giám sát hoặc các hệ thống nhận dạng đối

-

tượng.
Áp dụng cho các hệ thống camera hành trình trên xe hơi.

11


HV: Hồ Mạnh Khương


V.

GVHD: PGS. TS. Đỗ Văn Nhơn

TÀI LIỆU THAM KHẢO

[1]. Vladimir Zlokolica, Aleksandra Pižurica and Wilfried Philips, 2006 ,”Fuzzy logic
recursive motion detection and denoising of video sequences”.
[2]. E. Cox, 1992, “Fuzzy fundamentals”.
[3]. PGS. TS. Đỗ Văn Nhơn, 2008, “Bài giảng Fuzzy logic”.
[4]. M. Xu and T. Elis, 2001, “Illumination-invariant motion detection using colour
mixture models”

12



×