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

Nghiên cứu nhận diện và phát hiện đối tượng dựa trên nên tảng hệ thống iot camera

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 (8.69 MB, 28 trang )

TRƯỜNG ĐẠI HỌC QUY NHƠN
KHOA CÔNG NGHỆ THÔNG TIN
----------

BÁO CÁO CUỐI KỲ
XỬ LÝ ẢNH SỐ

“Nghiên cứu nhận diện và phát hiện đối tượng dựa trên nên tảng
hệ thống iot camera”
Hướng dẫn:

TS. Lê Thị Kim Nga

Thực hiện:

Nguyễn Trường Hải
Đặng Kỳ Duyên
Trần Thị Diệu Mỹ

Lớp:

Khoa học máy tính K23

Quy Nhơn, 04/2022


MỤC LỤC
DANH MỤC HÌNH ẢNH.....................................................................................3
PHẦN MỞ ĐẦU....................................................................................................4
CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG IOT CAMERA VÀ BÀI TOÁN
PHÁT HIỆN VÀ NHẬN DIỆN ĐỐI TƯỢNG......................................................6


1.1. Tổng quan về hệ thống IoT camera.............................................................6
1.1.1. Internet vạn vật......................................................................................6
1.1.2. Hệ thống camera giám sát.....................................................................8
1.2. Bài toán phát hiện và nhận diện đối tượng................................................10
1.2.1. Giới thiệu về dữ liệu video...................................................................10
1.2.2. Phát hiện đối tượng trên ảnh...............................................................12
1.2.3. Nhận diện đối tượng ảnh.....................................................................12
1.3. Quy trình phát hiện và nhận diện đối tượng trên hệ thống IoT camera.....12
CHƯƠNG 2: PHÁT HIỆN VÀ NHẬN DIỆN ĐỐI TƯỢNG TRÊN HỆ THỐNG
IOT CAMERA.....................................................................................................15
2.1. Một số kỹ thuật tiền xử lý..........................................................................15
2.1.1. Kỹ thuật phát hiện chuyển động..........................................................15
2.1.2. Kỹ thuật tách màu................................................................................17
2.2. Phát hiện đối tượng trên ảnh......................................................................21
2.3. Nhận diện đối tượng ảnh............................................................................25
KẾT LUẬN..........................................................................................................28


DANH MỤC HÌNH Ả
Hình 1. 1: Tham luận của PIACOM tại hội thảo Cách mạng Công nghiệp 4.0 và
ứng dụng IoT vào sản xuất thơng minh.................................................................8
Hình 1.2: Một số ví dụ về hệ thống camera giám sát............................................8
Hình 1.3: Zeotrope...............................................................................................10
Hình 1.4: Minh họa khung hình...........................................................................11
Hình 1.5: Sơ đồ chung về quá trình xử lý..........................................................13Y
Hình 2. 1: Khung hình hiện tại trừ cho khung hình tại thời điểm trước.............16
Hình 2.2: Các kết quả phân ngưỡng ảnh độ lệch................................................16
Hình 2.3: Khung hình nền tổng hợp với n=10 và ảnh mặt nạ kết quả................17
Hình 2.4: Khung hình nền tổng hợp với các giá trị n khác nhau và ảnh mặt nạ
kết quả..................................................................................................................17

Hình 2.5: Hình ảnh ví dụ một trận thi đấu bóng đá............................................18
Hình 2.6: Chọn một vùng ảnh mẫu để phân tích màu.........................................18
Hình 2.7: Histogram kênh Red của vùng ảnh mẫu được chọn............................19
Hình 2. 8: Histogram kênh Green của vùng ảnh mẫu được chọn.......................19
Hình 2. 9: Histogram kênh Blue của vùng ảnh mẫu được chọn..........................19
Hình 2.10:Chọn một vùng ảnh mẫu khác để phân tích màu...............................20
Hình 2.11: Histogram kênh Red của vùng ảnh mẫu được chọn..........................20
Hình 2.12: Histogram kênh Green của vùng ảnh mẫu được chọn......................20
Hình 2.13: Histogram kênh Blue của vùng ảnh mẫu được chọn.........................20
Hình 2.14: Tương quan vấn đề định vị đối tượng trong ảnh so với nhận diện và
phát hiện đối tượngtrong ảnh..............................................................................22
Hình 2.15: Minh họa quá trình xử lý của OverFeat............................................22
Hình 2.16: Minh họa quá trình phát hiện đối tượng dựa trên định vị trong YOLO 23
Hình 2.17: Ảnh mẫu minh họa cho q trình phân chia khơng gian của YOLO 23
Hình 2.18: Kết quả các đối tượng trong ảnh mẫu...............................................23
Hình 2.19: Minh họa kết quả ước lượng mong muốn với một mắt lưới..............24
Hình 2.20: Minh họa độ đo IoU..........................................................................24
Hình 2.21: Mơ hình ước lượng 2 hình bao khoanh màu xanh da trời dựa vào mắt
lưới khoanh màu vàng.........................................................................................25
Hình 2.22: Minh họa bước nhận diện đối tượng tại mỗi mắt lưới để tổng hợp vào
kết quả phát hiện đối tượng trong YOLO............................................................25
Hình 2.23: Kết quả ước lượng tại mỗi mắt lưới: các hình bao đối tượng ứng với
các lớp khác nhau sẽ được khoanh bằng màu khác nhau...................................26
Hình 2.24: Kiến trúc mạng nơ ron tích chập của YOLO.....................................26


PHẦN MỞ ĐẦU
Nghiên cứu về xử lý ảnh và thị giác máy là lĩnh vực nghiên cứu được rất
nhiều sự quan tâm của các nhà khoa học cũng như những hãng cơng nghệ trên
thế giới cũng như trong nước. Có nhiều cách để phân chia các hướng nghiên cứu

này, một trong số đó là phân chia theo dữ liệu đầu vào là ảnh tĩnh hoặc dữ liệu
video. Trong đó, dữ liệu video thường được gắn liền với các loại thiết bị ghi hình
như webcam và các loại camera ví dụ như các loại gắn trong nhà, trong ơ tơ,
ngồi trời, trên điện thoại di động.
Thời gian gần đây, sự phát triển và phổ biến nhanh chóng của các thiết bị
điện tử, đặc biệt là các loại camera trong thời đại của cuộc Cách mạng Công
nghiệp 4.0 đã tạo điều kiện cho sự ra đời của nhiều hệ thống IoT camera cùng
với càng nhiều những tác vụ xử lý thông minh từ dữ liệu hình ảnh thu được. Một
trong những bài toán nhận được nhiều sự quan tâm và được đặt ra trong cả
nghiên cứu khoa học lẫn thực nghiệm là bài toán nhận diện và phát hiện đối
tượng trên nền tảng hệ thống IoT camera. Trong những bài toán như vậy, ta cần
đến khả năng truy cập được dữ liệu camera trên hạ tầng mạng của hệ thống IoT
camera để từ đó tiến hành phân tích xử lý những đối tượng quan tâm trong khung
hình video. Đây là bài tốn có nhiều ứng dụng thực tế ví dụ như phát hiện đối
tượng đột nhập khu vực nhạy cảm, hỗ trợ xử lý vi phạm giao thơng, cảnh báo
khói lửa…
Hiện nay trong nước cũng đã có nhiều đơn có hướng nghiên cứu liên quan
ví dụ như Đại học Quốc Gia Hà Nội, Đại học Lạc Hồng, Đại học Bách Khoa Hà
Nội… Đây cũng là hướng nghiên cứu trọng tâm tại Viện Nghiên cứu ứng dụng
Khoa học và Công nghệ - Đại học Quy Nhơn trong những năm gần đây.
Xuất phát từ hồn cảnh đó, luận văn lựa chọn đề tài “Nghiên cứu nhận diện
và phát hiện đối tượng dựa trên nền tảng hệ thống IoT camera” nhằm nghiên cứu
một số vấn đề cơ bản của bài toán cùng với những giải pháp liên quan.
Bố cục của luận văn gồm phần mở đầu, phần kết luận và ba chương nội
dung được bố cục như sau:
Chương 1: Tổng quan các khái niệm về hệ thống IoT camera cũng như các
đặc điểm của dữ liệu video và các bài toán phát hiện đối tượng cũng như nhận
diện đối tượng. Trên cơ sở đó, luận văn đưa ra sơ đồ xử lý chung cho quy trình
phát hiện và nhận diện đối tượng trên hệ thống IoT camera.



Chương 2: Lý thuyết về một số kỹ thuật phục vụ phát hiện và nhận diện đối
tượng trong hệ thống IoT camera, cụ thể là một số kỹ thuật tiền xử lý như phát
hiện chuyển động và tách màu nhằm mục tiêu xác định sơ bộ khung hình có đối
tượng hay không, tiếp đến là các nội dung phát hiện đối tượng và nhận diện đối
tượng theo quy trình của cơng trình YOLO.


CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG IOT CAMERA VÀ BÀI
TOÁN PHÁT HIỆN VÀ NHẬN DIỆN ĐỐI TƯỢNG
1.1. Tổng quan về hệ thống IoT camera
1.1.1. Internet vạn vật
a. Giới thiệu
Trong những năm gần đây, sự phát triển của cuộc Cách mạng Công nghiệp
4.0 đã tạo ra nhiều sự chuyển biến đối với con người trong xã hội trên thế giới
nói chung và Việt Nam nói riêng. Nhiều lĩnh vực liên quan đến những hệ thống
công nghệ thông tin hiện đại cũng đã dần trở nên quen thuộc trong đời sống con
người. Một trong những lĩnh vực đó là IoT (Internet of Things), hay tiếng Việt
thường dịch là Internet vạn vật.
Hiểu một cách đơn giản và trực tiếp, IoT là một lĩnh vực công nghệ thông
tin liên quan đến việc nghiên cứu và xây dựng những hệ thống mà trong đó nhiều
thiết bị được liên kết với nhau qua môi trường Internet. Theo xu hướng của cuộc
Cách mạng Công nghiệp 4.0, ta có thể hình dung một hệ thống IoT sẽ bao gồm
một tập hợp nhiều thiết bị máy móc có khả năng kết nối với nhau qua môi trường
internet. Trong đó, chúng thực hiện truyền tải, trao đổi thơng tin dữ liệu trên cơ
sở phục vụ thực hiện một nhiệm vụ cụ thể nào đó mà có thể cần rất ít hoặc không
cần đến sự tương tác của con người, có thể bao gồm giữa con người với con
người và giữa con người với thiết bị máy móc. Để vận hành một hệ thống IoT có
thể cần đến ba loại hình kết nối: thứ nhất là máy móc - máy móc (machine to
machine), thứ hai là con người - máy móc (person to machine) và thứ ba là con

người - con người (person to person). Trong các mối liên kết đó, kết nối máy
móc - máy móc đóng vai trị chủ đạo xuyên suốt trong hoạt động của hệ thống
IoT.
Để có thể làm được điều này, hệ thống IoT cần đến một mạng lưới các cảm
biến thực hiện chức năng thu thập và đo lường các thông số dữ liệu để truyền tải
về máy chủ trung tâm để thực hiện phân tích xử lý. Trên cơ sở đó các thiết bị
máy móc và có thể cả con người sẽ sử dụng những thơng tin đã thu thập và phân
tích đó một cách tốt nhất theo yêu cầu chức năng cụ thể của hệ thống. Có thể là
sự phản ứng nhanh chóng của các thiết bị trong thời gian thực hoặc trong thời
gian thực hoặc có thể là sự ra điều phối kịp thời của người dùng từ xa thông qua
nền tảng điện toán đám mây.


Các thiết bị trong hệ thống IoT được kết nối với nhau qua nhiều hình thức,
có thể có dây hoặc không dây và với nhiều loại công nghệ truyền thông khác tùy
vào những thiết kế cụ thể. Thông qua hạ tầng kết nối đó, các cảm biến sẽ truyền
dữ liệu về một hoặc một hệ thống các máy chủ xử lý. Đây chính là đầu não cho
việc vận hành điều khiển nhằm phục vụ mục tiêu có được một hệ thống lệ thuộc
ít hoặc hồn tồn khơng lệ thuộc vào sự điều khiển của con người trong cuộc
Cách mạng Công nghiệp 4.0.
b. Một số minh họa
IoT từ lâu đã được nhận định là một lĩnh vực nhiều tiềm năng phát triển.
Vào năm 2011, theo tính tốn của hãng Cisco thì đến năm 2020 ước tính sẽ có
khoảng 50 tỷ thiết bị IoT kết nối vào Internet.
Tại Việt Nam, IoT cũng đã được quan tâm từ lâu trong nhiều lĩnh vực kinh
tế. Chẳng hạn, vấn đề kiểm soát nước thải đã được quan tâm nhiều hơn sau một
số vụ việc ô nhiễm như vụ việc ô nhiễm môi trường nghiêm trọng trên sông Thị
Vải của công ty VEDAN, vụ Formosa Hà Tĩnh… Cụ thể hơn đó là những quy
định về quản lý và bảo vệ môi trường đối với các khu kinh tế, khu kinh tế cửa
khẩu, khu công nghệ cao, khu chế xuất và cụm công nghiệp trong Thông tư

08/2009/TT-BTNMT hay là Nghị định 80/2014/NĐ-CP quy định về hoạt động
thoát nước và xử lý nước thải tại các đô thị, các khu công nghiệp, khu kinh tế,
khu chế xuất, khu công nghệ cao, khu dân cư nông thôn tập trung. Những quyết
sách này làm tăng nhanh nhu cầu về các hệ thống quan trắc và xử lý nước thải tại
Việt Nam. Trên thế giới hiện nay cũng đã có nhiều công ty lớn cung cấp những
giải pháp IoT phục vụ nhu cầu đó, có thể kể đến như giải pháp hỗ trợ giám sát từ
xa phục vụ quản lý nước và nước thải của công ty Advantech hay giải pháp quản
lý nước thải của cơng ty Ursalink.
Một ví dụ minh họa khác là trong lĩnh vực xăng dầu. Tại hội thảo “Cách
mạng Công nghiệp 4.0 và ứng dụng IoT vào sản xuất thông minh” được tổ chức
tại Khách sạn Inter Continental Asiana Saigon, TP. Hồ Chí Minh, cơng ty Cổ
phần Tin học Viễn thông Petrolimex (PIACOM) đã tham gia triển lãm với giải
pháp quản lý cửa hàng bán lẻ xăng dầu (EGAS) và hệ thống Tự động hóa cửa
hàng xăng dầu (AGAS) với các mơ hình tự động hóa đo bồn bể, thiết bị in hóa
đơn giao dịch bán lẻ xăng dầu cho khách hàng từ hệ thống EGAS.


Hình 1. 1: Tham luận của PIACOM tại hội thảo Cách mạng Công nghiệp 4.0
và ứng dụng IoT vào sản xuất thông minh
1.1.2. Hệ thống camera giám sát
Trong những thiết bị cảm biến, có thể nói cảm biến hình ảnh là một trong
những thiết bị được phổ biến rộng rãi nhất với sự xuất hiện của camera ở mọi nơi
trong đời sống kinh tế và xã hội. Camera giám sát là sản phẩm có thể dễ dàng
được tìm thấy và được sử dụng phổ biến hiện nay trên thị trường. Thị trường của
camera ngày nay khơng cịn chỉ ở những khu đơ thị, khu cơng nghiệp mà cịn
phát triển ở những khu vực ngoại thành, nơng thơn.

Hình 1.2: Một số ví dụ về hệ thống camera giám sát
Hiểu đơn giản, camera giám sát là một thiết bị được lắp đặt để hỗ trợ việc
giám sát và quản lý bằng cách cung cấp hình ảnh. Thơng thường, chuỗi hình ảnh

liên tục thu nhận được từ camera sẽ được lưu trữ và có thể truyền tải về thiết bị
quan sát từ xa.


Ta có thể hình dung hệ thống camera giám sát là một hệ thống gồm nhiều
thiết bị điện tử được kết nối với nhau và có khả năng ghi nhận những hình ảnh
của những khu vực, những hoạt động ở nơi cần quan sát và có thể truyền tải dữ
liệu hình ảnh này đến thiết bị thu nhận được kết nối ở xa. Dữ liệu hình ảnh sau
khi được thu nhận có thể được lưu trữ thành các file video hay có thể được xem
trực tiếp trong thời gian thực. Nhiều hệ thống cịn tích hợp những tác vụ xử lý
hình ảnh thơng minh như phát hiện đột nhập, phát hiện khói lửa…
Hầu hết các hệ thống camera giám sát hiện nay đều là hệ thống IoT, do các
thành phần của hệ thống được liên kết làm việc qua môi trường Internet. Người
sử dụng có thể dễ dàng sử dụng điện thoại di động hoặc trình duyệt web trên
máy tính để có thể giám sát từ xa khu vực mình quan tâm, chẳng hạn như camera
trong nhà trẻ thường luôn được cung cấp cho phụ huynh để có thể ln nhìn
được con em mình trong tầm mắt…
Trên thị trường hiện nay cũng đã có nhiều giải pháp cho hệ thống IoT
camera. Phổ biến nhất có thể kể đến là những hệ thống được cài đặt mặc định khi
triển khai của các hãng camera, chẳng hạn như Hikvision. Các hệ thống này cho
phép người dùng có thể truy cập được dữ liệu từ xa qua các phần mềm được cài
đặt trên điện thoại thông minh. Tuy nhiên hầu hết không hỗ trợ các tính năng xử
lý ảnh mà chỉ cung cấp khả năng quan sát từ xa qua môi trường Internet trong
thời gian thực.
Ngoài những giải pháp cơ bản của các hãng cung cấp thiết bị, nhiều sản
phẩm phần mềm quản lý camera tập trung cũng được triển khai rộng rãi. Có thể
kể đến là sản phẩm Milestone XProtect với số lượng thiết bị hỗ trợ hơn 8500 và
được cài đặt triển khai hơn 500000 bản trên toàn thế giới. Sản phẩm của
Milestone cũng được kết hợp với một hệ thống các plugin có thể được hãng thứ
ba cung cấp. Do đó rất nhiều tính năng xử lý thơng minh có thể được hỗ trợ

như nhận dạng biển số xe, các giải pháp phân tích mặt người như giới tính,
tuổi, trạng thái đeo kính, biểu cảm…
Một sản phẩm phần mềm quản lý camera tập trung của Việt Nam phát triển
gần đây là của công ty cổ phần VP9 Việt Nam với hướng phát triển cả phần cứng
lẫn phần mềm. VP9 vừa là hướng tới sản xuất chip xử lý hình ảnh vừa đầu tư
những tính năng thơng minh xuất phát từ dữ liệu của camera. Hiện nay VP9 đã
được tập đoàn Vingroup mua lại và đầu tư phát triển thêm.


1.2. Bài toán phát hiện và nhận diện đối tượng
1.2.1. Giới thiệu về dữ liệu video

Hình 1.3: Zeotrope
Nói đến video là ta nói đến những hiệu ứng hình ảnh chuyển động được tạo
ra từ một dãy ảnh liên tục. Vào năm 1834, William George Horner đã phát minh
ra Zeotrope - một loại thiết bị tạo ảo giác chuyển động bằng việc sử dụng một
dãy ảnh liên tiếp. Đây là một trong những phát minh sơ khai mở màn cho những
thiết bị hoạt họa. Đến năm 1877, Emile Reynaud đã thực hiện cải tiến chiếc
zeotrope thành praxinoscope. Theo đó hình ảnh được thu nhận được từ thiết bị
này đã rõ ràng hơn so với zeotrope. Tiếp đến năm 1889, George Eastman phát
minh phim chụp ảnh cho phép thực hiện lưu trữ nhiều hình ảnh khác nhau trên
cùng một cuộn phim. Sau đó là năm 1895, Louis Lumière trở thành một trong
những nhà là phim đầu tiên trên thế giới bằng hệ thống máy chiếu phim. Thời kỳ
này bắt đầu đánh dấu sự phát triển của phim ảnh.
Sự phát triển tiếp theo cho các kỹ thuật video phải kể đến là với các thiết bị
tivi sử dụng cathode CRT. Thời kỳ này cũng đánh dấu nhiều phát minh mới,
chẳng hạn nhóm Charles Ginsburg đã phát triển chiếc băng ghi hình đầu tiên là
VTR-Video Tape Recorder. Vào năm 1951, băng từ đã lần đầu tiên được sử dụng
để ghi lại hình ảnh. Sau đó là năm 1971 với sự xuất hiện của băng cát xét VCRVideo Cassette Recorder. Đến ngày nay, sự phát triển của máy tính và các thiết bị
điện tử đã mang lại cho con người những lựa chọn để lưu trữ, ghi hình, biên tập

đồ họa và truyền thơng một cách mạnh mẽ dữ liệu video qua mạng toàn cầu.
Video là một chuỗi các khung hình liên tiếp. Mỗi khung hình ở đây là một
hình ảnh, và là đơn vị dữ liệu cơ bản của một video. Trong video, các khung hình


đều có thể hiểu là được gắn một nhãn thời gian tương ứng thể hiện thời điểm
xuất hiện của khung hình đó khi video được trình chiếu. Thơng thưởng để mắt
người có thể cảm nhận được sự chuyển động thì các khung hình cần được phát
với một tốc độ nhất định, có thể là 25 hình/giây hoặc 30 hình/giây.

Hình 1.4: Minh họa khung hình
Xử lý video có thể được xem là một trường hợp đặc biệt của bài toán xử lý
tín hiệu. Trong đó, các dữ liệu tín hiệu đầu vào là các luồng video.
Video bản chất là một chuỗi ảnh liên tiếp tạo thành. Để có thể truyền tải
video một cách hiệu quả, dữ liệu video cần được nén. Bởi vậy, để có thể xử lý
được video, bên cạnh vấn đềphải chú ý đến các điều kiện như ánh sáng cảnh nền,
vị trí đặt camera… chúng ta cũng cần phải quan tâm tới các vấn đề về chuẩn nén
của video.
Bản chất hệ thống xử lý video là hệ thống xử lý ảnh, tuy nhiên do dữ liệu
video là một chuỗi các ảnh nên nó cịn có tính thời gian. Một số bài toán phổ
biến của hệ thống xử lý video:
- Phát hiện, nhận diện đối tượng
- Phân tích sự chuyển động, đếm số lượng của các đối tượng trong ảnh theo
thời gian
- Phân tích bóng của đối tượng
- Phát hiện các tình huống bất thường
1.2.2. Phát hiện đối tượng trên ảnh
Phát hiện đối tượng trên ảnh là kỹ thuật máy tính nhằm xác định các vị trí
và các kích thước của các đối tượng quan tâm trong các ảnh số bất kỳ. Kỹ thuật
này dựa trên những đặc điểm có tính phân biệt của đối tượng để nhận biết và bỏ

qua những đối tượng không quan tâm khác trên ảnh. Ví dụ như phát hiện khn


mặt thì đối tượng quan tâm là vùng ảnh mặt người, và bỏ qua những đối tượng
có thể khác trên ảnh như xe cộ, nhà cửa…
Phát hiện đối tượng trên ảnh là một bài toán quan trọng trong các hệ thống
xử lý ảnh. Nó có thể đóng vai trị là kết quả chủ đạo của một chức năng cụ thể ví
dụ như tính năng phát hiện khn mặt trên các máy chụp ảnh kỹ thuật số, hoặc
cũng có thể đóng vai trị là một cơng đoạn trung gian nhằm cung cấp dữ liệu xử
lý cho các bước tiếp theo, ví dụ như để nhận dạng văn bản, ta cần phát hiện vị trí
của từng chữ cái để sau đó lấy ra thực hiện nhận dạng ký tự. Trong những tình
huống như vậy, việc xác định chính xác vị trí và kích thước các đối tượng quan
tâm là một trong những yếu tố quyết định để giai đoạn xử lý tiếp theo được thực
hiện hiệu quả và chính xác.
1.2.3. Nhận diện đối tượng ảnh
Nhận diện (hay nhận dạng) đối tượng trên ảnh là kỹ thuật máy tính nhằm
xác định nhãn lớp cụ thể của một đối tượng ảnh được thể hiện bằng một ảnh số
bất kỳ. Các kỹ thuật kỹ thuật trong nhóm này phân tích những đặc điểm có tính
phân biệt của đối tượng để làm cơ sở nhận biết nó so với các đối tượng khác. Ví
dụ như nhận diện một ảnh có phải là khn mặt hay khơng, nhận diện xem một
ảnh khuôn mặt là ai trong hệ thống…
Nhận diện đối tượng trên ảnh là một bài toán quan trọng trong các hệ thống
xử lý ảnh. Nó thường đóng vai trị là kết quả chủ đạo của một chức năng cụ thể
trong hệ thống. Một số tình huống thì nó cũng đóng vai trị là một cơng đoạn
trung gian nhằm cung cấp dữ liệu xử lý cho các bước tiếp theo, ví dụ như để
nhận diện các ký tự trên biển số xe, ta cần biết ảnh đang xét là ảnh biển số xe đã.
1.3. Quy trình phát hiện và nhận diện đối tượng trên hệ thống IoT camera
Bản thân việc phát hiện đối tượng trong nhiều trường hợp có thể hiểu là đã
bao hàm nhận diện đối tượng. Do việc phát hiện đối tượng cần chỉ ra vị trí của
các đối tượng quan tâm. Tức là trong kết quả đã có các vị trí cùng với tên đối

tượng tương ứng. Bởi vì kết quả có tên đối tượng, về mặt ngữ nghĩa có thể hiểu
là trong kết quả phát hiện đối tượng đã có kết quả nhận diện đối tượng. Trên cơ
sở đó, ta có thể hình dung khối xử chính phát hiện và nhận diện đối tượng trong
hệ thống sẽ bao gồm về mặt lý thuyết là hai bước phát hiện đối tượng và nhận
diện đối tượng. Trong một số kỹ thuật cụ thể, có thể hai bước này sẽ được cài đặt
xen lẫn vào nhau.


Bên cạnh đó, các đối tượng quan tâm trong một hệ thống thường không
phải lúc nào cũng xuất hiện trong khung hình. Chẳng hạn khi ta quan tâm đến
người, khơng phải lúc nào cũng có người đứng trước camera. Nhất là khi ban
đêm, sẽ có những quãng thời gian dài khơng có người xuất hiện. Để tránh việc
xử lý phát hiện và nhận diện đối tượng một cách liên tục không cần thiết, ta đặt
thêm một khối tiền xử lý làm nhiệm vụ kiểm tra sơ bộ xem có đối tượng trong
khung hình hay khơng.

Hình 1.5: Sơ đồ chung về quá trình xử lý
Từ khung hình hiện tại, hệ thống sẽ thực hiện xác định sơ bộ xem trong
khung có thể có đối tượng quan tâm hay khơng. Đây sẽ là một bước xử lý đơn
giản không tốn quá nhiều tài ngun tính tốn. Nếu như nhận định rằng trong
khung hình khơng có đối tượng quan tâm, việc xử lý với khung hình hiện tại sẽ
kết thúc. Nếu như xác định là có thể có đối tượng, khối xử lý chính sẽ được thực
thi. Về mặt lý thuyết là sẽ tiến hành hai bước là phát hiện đối tượng và nhận diện
đối tượng nhằm xác định các đối tượng quan tâm có xuất hiện trong khung hình
hiện tại. Sau đó là kết thúc xử lý.



CHƯƠNG 2: PHÁT HIỆN VÀ NHẬN DIỆN ĐỐI TƯỢNG TRÊN HỆ
THỐNG IOT CAMERA

2.1. Một số kỹ thuật tiền xử lý
Các kỹ thuật tiền xử lý thường là các kỹ thuật khơng q phức tạp và có
nhiệm vụ hỗ trợ cho chức năng xử lý chính của chương trình. Trong trường hợp
này chúng sẽ giúp xác định nhanh các vùng có đối tượng quan tâm hay không
bằng cách đưa ra những vùng sẽ chứa đối tượng hoặc những vùng chắc chắn
không có đối tượng.
Việc lựa chọn sử dụng kỹ thuật xử lý như thế nào thường sẽ phụ thuộc vào
yêu cầu cụ thể của bài toán được đưa ra. Một số kỹ thuật thường hay được sử
dụng đó là kỹ thuật phát hiện chuyển động và kỹ thuật tách màu.
2.1.1. Kỹ thuật phát hiện chuyển động
Ta xem xét dữ liệu thu nhận được từ các camera quan sát tại một khu vực cụ
thể, thường là với các camera được lắp đặt cố định, chẳng hạn như camera quan
sát đặt ở cổng vào, camera đường phố, camera đặt ở hành lang hay trong sảnh…
Thường các camera này sẽ nằm trong một hệ thống IoT về giám sát trực tuyến
khu vực cần theo dõi và thực hiện các chức năng như phát hiện đột nhập tại khu
vực nhạy cảm, điểm danh người vào ra hay phát hiện vi phạm giao thông. Trong
những hệ thống IoT camera như vậy, mối quan tâm thường được đặt lên các đối
tượng xuất hiện trong cảnh nền như con người, mặt người, xe cộ. Rõ ràng sẽ có
rất nhiều thời điểm những đối tượng như vậy không xuất hiện trong khung hình
và ta khơng cần quan tâm đến những khung hình đó. Ví dụ như dữ liệu camera
quay trong thời gian nghỉ, lúc nửa đêm hoặc một số thời điểm khác mà khơng có
đối tượng quan tâm như người hay xe cộ qua lại. Việc thực hiện nhiều thao tác
xử lý tốn nhiều tài ngun tính tốn trên những khung hình như vậy là một việc
làm vơ ích.
Xuất phát từ nhận xét đơn giản đó, đối với dữ liệu camera trong những bài
toán như vậy, một ý tưởng là có đối tượng quan tâm thì sẽ có chuyển động, nên
việc phát hiện chuyển động chính là bước tiền xử lý đơn giản để đánh giá xem
trong khung hình hiện tại có khả năng có đối tượng quan tâm hay không. Ta xem
xét một số kỹ thuật phát hiện chuyển động : so sánh hai khung hình liên tiếp, so
sánh nền trung bình.



a. So sánh khung hình liên tiếp
Về mặt kỹ thuật, đây có thể nói là một trong những kỹ thuật đơn giản nhất.
Thực hiện bằng cách lấy khung hình hiện tại so sánh với khung hình ngay trước
đó bằng cách lấy giá trị tuyệt đối của hiệu từng điểm ảnh. Cơng thức như sau:

Trong đó, khung hình hiện tại là khung hình tại thời điểm t sẽ được so sánh
với khung hình tại thời điểm t-1, Các giá trị độ lệch sẽ được so sánh với ngưỡng
Th để đánh giá là chuyển động

Hình 2. 1: Khung hình hiện tại trừ cho khung hình tại thời điểm trước

Hình 2.2: Các kết quả phân ngưỡng ảnh độ lệch
b. So sánh nền trung bình
Kỹ thuật này có ưu điểm hơn so với kỹ thuật so sánh hai khung hình liên
tiếp do giảm được sự phụ thuộc với những thay đổi tức thời. Kỹ thuật
dduwcowjc thực hiện tương tự như kỹ thuật so sánh hai khung hình liên tiếp
nhưng thay vì dùng khung hình ngay trước đó thì ta thực hiện sử dụng một
khung hình nền tổng hợp. Các điểm ảnh của khung hình nền tổng hợp được tính


từ trong bình của n khung hình gần nhất với khung hình hiện tại. Cơng thức như
sau:

Trong đó, khung hình hiện tại là khung hình tại thời điểm t sẽ được so sánh
với trung bình của n khung hình liền trước nó, Các giá trị độ lệch sẽ được so
sánh với ngưỡng Th để đánh giá là chuyển động.

Hình 2.3: Khung hình nền tổng hợp với n=10 và ảnh mặt nạ kết quả


Hình 2.4: Khung hình nền tổng hợp với các giá trị n khác nhau và ảnh mặt nạ
kết quả
2.1.2. Kỹ thuật tách màu
Phân tích màu là một kỹ thuật hiệu quả để xử lý những đối tượng ảnh của
đặc trưng màu ổn định ví dụ như da người, những quả bóng màu… hoặc để xử lý
những đối tượng ảnh được đặt trên một vùng nền có đặc trưng màu ổn định ví dụ
như hình ảnh các diễn viên biểu diễn trên nền xanh trong hậu trường phim, hay
hình ảnh các cầu thủ di chuyển trên sân bóng phủ cỏ màu xanh. Phương pháp
này dựa trên những đặc trưng màu sắc có tính phân biệt của vùng quan tâm so
với những vùng khác trên ảnh.


Một cách hình dung trực quan về sự phân biệt của đặc trưng màu, ta xét trên
mơ hình biểu diễn của histogram. Ta xét một hình ảnh ví dụ của một trận thi đấu
bóng đá như sau:

Hình 2.5: Hình ảnh ví dụ một trận thi đấu bóng đá
Ta thực hiện phân tích một vùng ảnh của sân cỏ :

Hình 2.6: Chọn một vùng ảnh mẫu để phân tích màu
Ta xem xét trực tiếp histogram của vùng ảnh được chọn với 3 kênh trong hệ
màu truyền thống RGB :

Hình 2.7: Histogram kênh Red của vùng ảnh mẫu được chọn


Hình 2. 8: Histogram kênh Green của vùng ảnh mẫu được chọn

Hình 2. 9: Histogram kênh Blue của vùng ảnh mẫu được chọn

Dễ dàng nhận thấy do sự ổn định về đặc trưng màu, các histogram rất tập
trung vào một vị trí. Các vùng khác có giá trị histogram hầu như bằng 0. Như
vậy bằng cách xét ngưỡng ta có thể dễ dàng đánh giá sơ bộ vùng ảnh nào là vùng
sân cỏ. Ta thực hiện một phân tích tương tự với vùng ảnh khác :

Hình 2.10:Chọn một vùng ảnh mẫu khác để phân tích màu
Ta cũng xem xét trực tiếp histogram của vùng ảnh được chọn với 3 kênh
trong hệ màu truyền thống RGB :


Hình 2.11: Histogram kênh Red của vùng ảnh mẫu được chọn

Hình 2.12: Histogram kênh Green của vùng ảnh mẫu được chọn

Hình 2.13: Histogram kênh Blue của vùng ảnh mẫu được chọn
Dễ dàng nhận thấy đặc trưng màu trong vùng này kém ổn định so với vùng
vừa xét, các histogram đã có sự phân tán rõ rệt trong khoảng giá trị của các điểm
ảnh.
2.2. Phát hiện đối tượng trên ảnh
Phát hiện đối tượng trên ảnh nhằm mục tiêu đưa ra được danh sách các vị
trí và kích thước của các đối tượng quan tâm trong ảnh. Do đó các kỹ thuật phát
hiện đối tượng trên ảnh thường cố gắng thực hiện phân tích vùng khơng gian
trong ảnh theo nhiều tiêu chí khác nhau để dễ dàng thực hiện đánh giá. Kỹ thuật
được trình bày trong nội dung này là kỹ thuật YOLO [6], cụ thể là cách thức
phân chia không gian ảnh và cách đặt vấn đề xác định vị trí và kích thước của
các đối tượng quan tâm trong ảnh. Những nội dung về việc đặt vấn đề xác định
nhãn lớp của đối tượng cũng như mơ hình học máy sẽ được trình bày trong mục
nhận diện đối tượng ảnh.



Khác với YOLO và một số kỹ thuật phát hiện đối tượng hiện đại sử dụng
deep learning, các kỹ thuật phát hiện đối tượng truyền thống thường sử
dụngphương pháp cửa sổ trượt để phân chia không gian ảnh trước khi tiến hành
các bước xử lý khác. Cụ thể là tận dụng một vùng cửa sổ làm tiêu chí để xác
định tập các vùng ảnh con của ảnh đầu vào.
Khi di chuyển cửa sổ khắp ảnh, tại mỗi vị trí của cửa sổ ta sẽ thu được một
vùng ảnh con của ảnh đầu vào. Bằng cách sử dụng nhiều cửa sổ với những kích
thước khác nhau cùng với những cách di chuyển cửa sổ khác nhau được cấu
hình, ta sẽ thu được một tập hợp các vùng ảnh con của ảnh đầu vào. Đây chính là
những ứng cử viên để đánh giá xem đó là ảnh của đối tượng gì. Với mỗi vùng
ảnh con cụ thể, ta đã xác định được rõ ràng vị trí và kích thước của vùng ảnh con
đó trong ảnh đầu vào nhờ các tham số của cửa sổ trượt, bài toán tiếp theo là nhận
diện đối tượng ảnh. Cụ thể hơn là ta thực hiện nhận diện vùng ảnh con đó xem
có phải là đối tượng được quan tâm trong hệ thống hay không. Nếu đúng là đối
tượng quan tâm của hệ thống, vị trí và kích thước của vùng ảnh con được ghi
nhận lại, nếu khơng phải thì bỏ qua.
Phương pháp cửa sổ trượt đã đạt được rất nhiều thành công trong nhiều kỹ
thuật phát hiện đối tượng khác nhau. Một trong những cơng trình nổi tiếng nhất
là kỹ thuật Haar Adaboost của Paul Viola và Michael Jones.
Theo sự phát triển, những kỹ thuật deep learning ra đời đã đưa ra những
giải pháp cho các vấn đề mà những kỹ thuật học máy truyền thống thường khó
có thể đáp ứng. Một trong những vấn đề đó là Object Localization – tạm dịch
trong ngữ cảnh này là định vị đối tượng trong ảnh. Trong vấn đề này, cần đến
một mơ hình học máy cho phép hồi quy được kết quả đầu ra là thông tin tọa độ
hình bao của đối tượng từ một ảnh đầu vào.

Hình 2.14: Tương quan vấn đề định vị đối tượng trong ảnh so với nhận diện
và phát hiện đối tượngtrong ảnh



Trong bài toán định vị, số lượng đối tượng được ước lượng hình bao là cố
định, và thường sẽ được hiểu là chỉ một đối tượng duy nhất trong một ảnh. Bài
toán này cũng đã được nghiên cứu trong các cơng trình của nhóm Szegedy và
nhóm Sermanet. Cơng trình MultiBox của nhóm Szegedy [8] xây dựng một
mạng nơ ron tích chập để ước lượng hình bao trong một ảnh nhưng MultiBox chỉ
đóng vai trị là một cơng đoạn nhỏ trong tồn bộ q trình phát hiện đối tượng.
Kết quả OverFeat của nhóm Sermanet cũng huấn luyện một mạng nơ ron tích
chập để thực hiện định vị và kết hợp với phương pháp cửa sổ trượt để hồn thiện
q trình phát hiện đối tượng.

Hình 2.15: Minh họa quá trình xử lý của OverFeat
Cách thiết lập phát hiện đối tượng trong YOLO cũng có điểm tương tự như
trong các cơng trình là cũng dựa trên cơ sở thao tác định vị đối tượng trong ảnh.
Tức là hệ thống sẽ ước lượng ra các hình bao của đối tượng từ một vùng ảnh cho
trước. Quy trình này của YOLO được mơ tả như sau:

Hình 2.16: Minh họa quá trình phát hiện đối tượng dựa trên định vị trong YOLO
Như vậy, ta có thể hiểu tóm tắt các bước này như sau: ảnh đầu vào được
chia lưới, thực hiện định vị trên mỗi mắt lưới sau cùng tổng hợp các kết quả lại.
Tất nhiên việc tổng hợp còn cần đến cả kết quả của thao tác nhận diện đối tượng.
Ta hình dung các bước chi tiết trên một ảnh mẫu như sau:


Hình 2.17: Ảnh mẫu minh họa cho quá trình phân chia không gian của YOLO
Và ta giả sử rằng kết quả các đối tượng trong ảnh mẫu đó như sau:

Hình 2.18: Kết quả các đối tượng trong ảnh mẫu
Ảnh đầu vào sẽ được xử lý chia lưới SxS. Trong đó mỗi mắt lưới sẽ là đầu
vào để thuật toán ước lượng các hình bao cho một đối tượng. Kết quả thực hiện
với một mắt lưới được kỳ vọng như trong hình sau:


Hình 2.19: Minh họa kết quả ước lượng mong muốn với một mắt lưới
Ta nhận thấy trong hình, mắt lưới được khoanh màu vàng thuộc về đối
tượng người và vùng đối tượng người được vẽ với hình bao màu xanh da trời.
Như vậy, thuật toán cần phải ước lượng ra kết quả các tọa độ hình bao xấp xỉ như
vùng hình bao màu xanh da trời được khoanh trong ảnh với đầu vào là vùng ảnh
trong mắt lưới được khoanh màu vàng.


Để thực hiện điều này, YOLOsẽ ước lượng B hình bao đối tượng cùng với
giá trị độ tin cậy tương ứng với mỗi hình bao đối tượng. Các giá trị độ tin cậy
phản ánh độ tin cậy mà mơ hình YOLO dự đốn cho mỗi hình bao tương ứng.
Hiểu một cách khác là dự đốn độ chính xác của hình bao được đề ra. Giá trị độ
tin cậy sẽ được kỳ vọng là độ đo IoU cho vùng hình bao được ước lượng.

Hình 2.20: Minh họa độ đo IoU
Với hai hình bao của đối tượng là hình bao chính xác được gán nhãn ban
đầu và hình bao được ước lượng từ mơ hình YOLO, giá trị IoU được tính bằng tỉ
lệ giữa diện tích vùng giao của hai hình bao chia cho diện tích vùng hợp thành
của hai hình bao đó. Như vậy nếu khơng có đối tượng tồn tại tương ứng với vị trí
mắt lưới, giá trị độ tin cậy sẽ bằng 0. Trường hợp tốt nhất khi hai hình bao trùng
nhau, tức là mơ hình dự báo hồn tồn chính xác hình bao của đối tượng, giá trị
độ tin cậy sẽ bằng 1.
Trong B kết quả ước lượng hình bao của đối tượng tại mỗi mắt lưới, mỗi kết
quả sẽ bao gồm 5 giá trị là x, y, w, h và confidence. (x, y) là tọa độ của tâm hình
bao theo quan hệ với tâm của mắt lưới. Cịn hai kích thước chiều rộng và chiều
cao (w, h) thì theo quan hệ với kích thước ảnh. Minh họa kết quả như sau:

Hình 2.21: Mơ hình ước lượng 2 hình bao khoanh màu xanh da trời dựa vào
mắt lưới khoanh màu vàng

Mơ hình ước lượng được YOLO sử dụng là một mạng nơ ron tích chập.
Mạng này được thiết kế để sử dụng chung cùng với chức năng nhận diện đối
tượng ứng với mắt lưới. Chi tiết về mô hình mạng sẽ được trình bày trong phần
nhận diện đối tượng ảnh.


2.3. Nhận diện đối tượng ảnh
Trong YOLO, việc nhận diện đối tượng ảnh được thực hiện cũng được thực
hiện tại mỗi mắt lưới. Cụ thể, mơ hình sẽ dự đốn các xác suất có điều kiện
tương ứng với C lớp có trong tập dữ liệu. Các xác suất này sẽ được tính tốn trên
mỗi mắt lưới có tương ứng với một đối tượng nào đó và thuật tốn chỉ thực hiện
dự báo một danh sách các xác suất ứng với mỗi lớp một lần duy nhất trên mỗi
mắt lưới. Điều này không phụ thuộc vào số lượng B của các hình bao đối tượng.
Quy trình này của YOLO có thể được mơ tả như sau:

Hình 2.22: Minh họa bước nhận diện đối tượng tại mỗi mắt lưới để tổng hợp
vào kết quả phát hiện đối tượng trong YOLO
Như vậy ảnh đầu vào được chia thành S x S mắt lưới, tại mỗi mắt lưới ta sẽ
thực hiện nhận diện đối tượng bằng cách ước lượng C giá trị xác suất tương ứng
với C lớp trong tập dữ liệu. Nếu kết hợp với nội dung dự báo B hình bao, thì mỗi
mắt lưới ta sẽ phải ước lượng tổng cộng B*5 + C giá trị. Xét trên toàn bộ ảnh, số
giá trị phải ước lượng sẽ là S*S*(B*5 + C) giá trị.
Nếu thực hiện minh họa lại các nhãn lớp bằng màu cho tập các hình bao, ta
có thể hình dung bước dự báo sẽ được kết quả như sau:

Hình 2.23: Kết quả ước lượng tại mỗi mắt lưới: các hình bao đối tượng ứng
với các lớp khác nhau sẽ được khoanh bằng màu khác nhau
Để ước lượng được toàn bộ các giá trị trên, các tác giả xây dựng một mơ
hình mạng nơ ron tích chập và trong cơng trình, các tác giả cũng đã đánh giá trên
bộ dữ liệu PASCAL VOC. Các tầng tích chập của mạng sẽ thực hiện trích rút các

đặc trưng của ảnh trong khi đó các tầng kết nối đầy đủ sẽ dự báo đầu ra là các giá
trị xác suất cũng như các tọa độ hình bao như đã mơ tả ở trên. Mơ hình mạng của
YOLO cũng được lấy cảm hứng từ mơ hình GoogLeNet dành cho bài tốn nhận
diện ảnh của nhóm Szegedy của Google. Về mặt chi tiết, mơ hình mạng của


×