Tải bản đầy đủ (.pdf) (72 trang)

Công nghệ nhận dạng trong nhà thông minh

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 (2.57 MB, 72 trang )

MỤC LỤC
CHƯƠNG I: ĐẶT VẤN ĐỀ VÀ PHƯƠNG ÁN GIẢI QUYẾT VẤN ĐỀ ............................... 5

1.1. Đặt vấn đề ............................................................................................................5
1.2. Mục tiêu đề tài ......................................................................................................6
1.3. Tổng quan về nhà thông minh ..............................................................................7
1.3.1. Nhà thơng minh là gì? .................................................................................................. 7
1.3.2. Ngun tắc hoạt động của nhà thông minh.................................................................. 8
1.3.3. Những xu hướng phát triển của nhà thông minh ở Việt Nam ..................................... 9

1.4. Giới thiệu chung về hệ thống xử lý ảnh .............................................................10
1.5. Công nghệ nhận dạng bàn tay ............................................................................12
1.5.1. Nhận dạng bàn tay dựa vào màu sắc và hình dáng .................................................... 12
1.5.2. Nhận dạng dựa vào ngưỡng trên mỗi kênh màu ........................................................ 12
1.5.3. Optical Flow .............................................................................................................. 12
1.5.4. Phương pháp trừ nền .................................................................................................. 13
CHƯƠNG II: THIẾT KẾ PHẦN CỨNG ............................................................................ 14

2.1. Tổng quan về các linh kiện trong đề tài .............................................................14
2.1.1. Vi điều khiển ESP32 .................................................................................................. 14
2.1.2. Các cảm biến được sử dụng trong đề tài .................................................................... 23
2.1.3. Một số linh kiện thiết bị khác .................................................................................... 26

2.2. Sơ đồ thuật toán điều khiển hệ thống thiết bịbị .................................................32
2.3. Sơ đồ nguyên lý của hệ thống ............................................................................32
2.3.1. Sơ đồ nguyên lý phòng khách .................................................................................... 32
2.3.1. Sơ đồ nguyên lý phòng ngủ ....................................................................................... 34
2.3.2. Sơ đồ nguyên lý phòng bếp ....................................................................................... 35
CHƯƠNG III: THIẾT KẾ PHẦN MỀM.............................................................................. 37

3.1. Lập trình điều khiển thiết bị thơng qua wifi bằng app Blynk ............................37


3.2. Lập trình điều khiển thiết bị bằng cử chỉ bàn tay...............................................42
3.2.1. Cơ sở lý thuyết ........................................................................................................... 42
3.2.2. Nhận dạng cử chỉ tay thông qua Python .................................................................... 48
3.2.3. Ứng dụng lập trình điều khiển thiết bị qua nhận dạng cử chỉ tay .............................. 51
CHƯƠNG IV: KẾT LUẬN VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN .................................... 56

4.1. Kết luận ..............................................................................................................56
4.2. Phương hướng phát triển ....................................................................................56
TÀI LIỆU THAM KHẢO ................................................................................................... 57
PHỤ LỤC (Code) ............................................................................................................ 58


DANH MỤC HÌNH ẢNH
Hình 1.1: Điều khiển hệ thống đèn qua Smartphone ............................................................. 7
Hình 1.2: Giám sát ngơi nhà qua Camera an ninh ................................................................. 8
Hình 1.3: Sơ đồ khối tiến trình xử lý ảnh cơ bản ................................................................. 10
Hình 1.4: Hình minh họa kết quả thuật tốn trừ nền ........................................................... 13
Hình 2.1: Module ESP32-WROOM-32............................................................................... 15
Hình 2.3: Cấu trúc và địa chỉ bộ nhớ của ESP32................................................................. 19
Hình 2.4: Sơ đồ nguyên lý module ESP32-WROOM-32 .................................................... 23
Hình 2.5: Module cảm biến nhiệt độ độ ẩm DHT11 ........................................................... 23
Hình 2.6: Kit Module cảm biến mưa ................................................................................... 24
Hình 2.7: Module cảm biến khí gas ..................................................................................... 25
Hình 2.8: Cảm biến điện dung và cách điều chỉnh ngõ ra ................................................... 26
Hình 2.9: Màn hình hiển thị LCD 16x2 ............................................................................... 26
Hình 2.10: Mạch chuyển đổi I2C......................................................................................... 28
Hình 2.11: Module Relay 2 kênh ......................................................................................... 29
Hình 2.12: Module điều khiển động cơ L298N .................................................................. 30
Hình 2.13: Động cơ Servo sg90 ........................................................................................... 30
Hình 2.14: Chốt điện từ 12V LY-01 .................................................................................... 31

Hình 2.15: Lưu đồ thuât toán điều khiển hệ thống thiết bị .................................................. 32
Hình 2.16: Sơ đồ ngun lý phịng khách (1) ...................................................................... 33
Hình 2.17: Sơ đồ ngun lý phịng khách (2) ...................................................................... 34
Hình 2.18: Sơ đồ ngun lý phịng khách............................................................................ 35
Hình 2.19: Sơ đồ ngun lý phịng bếp ............................................................................... 36
Hình 3.1: Ứng dụng Blynk App điều khiển thiết bị .............................................................. 37
Hình 3.2: Lấy mã Auth Token trên Website của Blynk ........................................................ 37
Hình 3.3: Giao diện đăng nhập Blynk ................................................................................. 40
Hình 3.4: Giao diện App Blynk sau khi tạo tài khoản ........................................................ 40
Hình 3.5: Giao diện tạo trang và nút nhấn.......................................................................... 41
Hình 3.6: Cài đặt các thơng số của nút Widget ................................................................... 41
Hình 3.7: Giao diện app sau khi đã hồn thành đăng ký .................................................... 42
Hình 3.8: Điểm ảnh (Pixel).................................................................................................. 43
Hình 3.9: Minh họa mức xám sau khi mã hóa ..................................................................... 44


Hình 3.10: Minh họa ảnh nhị phân sau khi mã hóa ............................................................ 44
Hình 3.11: Khơng gian màu HSV ........................................................................................ 45
Hình 3.12: Khơng gian màu RGB ........................................................................................ 45
Hình 3.13: Ngơn ngữ lập trình python trên Raspberry ....................................................... 48
Hình 3.14: Mức xám của điểm ảnh là cường độ sáng của nó gán bằng giá trị số tại điểm đó
............................................................................................................................................. 50
Hình 3.15: Khung hình đầu vào........................................................................................... 51
Hình 3.16: Khung hình chứa bàn tay .................................................................................. 52
Hình 3.17: Lưu đồ thuật tốn thu thập ảnh ......................................................................... 54
Hình 3.18: Lưu đồ thật tốn chạy chương trình chính sau khi đã train .............................. 55
Hình 4.1: Kết quả thu được sau khi xử lí ảnh ...................................................................... 56


DANH MỤC BẢNG BIỂU

Bảng 2.1: Các phiên bản Module ESP32 ............................................................................. 14
Bảng 2.2: Thông số kiến nghệ cho ESP32-WROOM-32 .................................................... 15
Bảng 2.3: Bảng thông số kỹ thuật cơ bản của module ESP-WROOM-32 .......................... 16
Bảng 2.4: Bảng chân Module ESP32-WROOM-32 ............................................................ 16
Bảng 2.5: Bảng sơ đồ chân màn hình LCD ......................................................................... 26
Bảng 2.6.: Thiết bị dùng trong phòng khách. ...................................................................... 34
Bảng 2.7: Thiết bị dùng cho phòng ngủ............................................................................... 35
Bảng 2.8: Bảng thiết bị sử dụng trong phòng bếp ............................................................... 36


CHƯƠNG I: ĐẶT VẤN ĐỀ VÀ PHƯƠNG ÁN GIẢI QUYẾT VẤN ĐỀ
1.1. Đặt vấn đề
Với sự phát triển của khoa học công nghệ, các thiết bị điện tử đang dần phát triển
theo hướng tự động hóa, thơng minh, càng hiểu biết được tư duy con người. Đặc biệt
trong những năm gần đây, trí tuệ nhân tạo AI càng phát triển mạnh mẽ và cho thấy sự
tiên tiến và tiện ích của mình khi ứng dụng vào các thiết bị điện phục vụ trong đời sống
thường ngày của con người. Thậm chí ngày nay con người có thế thực hiện giao tiếp với
thiết bị mà không cần qua các thiết bị trung gian, để hiểu và xử lí được các cử lệnh con
người đưa ra các thiết bị cảm biến, thuật tốn nhận dạng phải cang phát triển và càng
chính xác, dễ sử dụng hơn. Chúng có thể nhận biết được các hoạt động, các cử chỉ khuôn
mặt, bàn tay của con người và hoạt động đúng theo ý đồ của người lập trình. Bài tốn
“Nhận dạng cử chỉ điều khiển thiết bị” là một trong số đó. Ngơn ngữ cơ thể, đặc biệt là
ngôn ngữ tay được xem là một trong những phương pháp giao tiếp tự nhiên và dễ thực
hiện nhất đối với con người.
Hệ thống nhận dạng cử chỉ đã khơng cịn q xa lạ với con người hiện đại ngày
nay, thậm chí các hệ thống này cịn được đề xuất và phát triển rất mạnh mẽ trong thực
tiễn cuộc sống hàng ngày cũng như các đề án nghiên cứu để tạo ra các giải thuật chuyên
sâu có thể nhận diện chính xác hơn. Trong những năm qua có thể nhắc tới một số thành
tựu nổi bật trong lĩnh vực nghiên cứu công nghệ nhận diện cử chỉ như:



Nghiên cứu của Chen Chiung Hsieh và Dung Lua Liou về nhận dạng cử chỉ
bằng chuyển động ảnh đã xãy ra. Các khung hình được tích lũy trong các ảnh
lịch sử chuyển động. Sử dụng các thuật toán để lọc ra các điểm ảnh da phát
hiện nhỏ hơn một ngưỡng nhất định. Hệ thống của họ được xây dựng và hoạt
động dựa trên các khối: Digital Zoom, phát hiện màu da, nhận dạng cử chỉ.



Nghiên cứu của Dharani Mazumdar, Kandapar Kumar Sarma và Anjan Kumar
nghiên cứu nhận dạng cử chỉ găng tay cảm biến Data Glove. Bằng việc sử
dụng lối ra số của Sensor gia tốc MEMS gắn liền với các ngón tay và sử dụng
vi điều khiển. Máy tính phân tích và xử lý thơng tin dữ liệu và thực hiện các
thuật tốn.



Trong nước có những đề tài như: “Nghiên cứu phát triển kỹ thuật nhận dạng
cử động của bàn tay người theo thời gian thực’ của nhóm nghiên cứu thuộc
khoa Công nghệ Thông tin, Học viện Kỹ thuật Quân sự do TS. Trần Nguyên
Ngọc làm chủ nhiệm đã mở ra nhiều hướng ứng dụng hiệu quả trong thực tế.
Những hiệu quả trong ứng dụng của đề tài như phát triển hệ thống hỗ trợ tra


cứu thông tin và điều khiển thiết bị từ xa, điều khiển robot trợ giúp người
khuyết tật, tích hợp điều khiển tivi, máy nghe nhạc,…


Đê tài: ‘Nhận diện cử chỉ bàn tay sử dụng phân cụm K-MEANS và mạng NƠRON” do 2 sinh viên khoa Điện – Điện Tử trường Đại học Sư Phạm Kỹ Thuật
thành phố Hồ Chí Minh được thực hiện năm 2014, giúp tìm hiểu tổng quan về

xử lý ảnh, tìm hiểu được các phương pháp nhận dạng cử chỉ tay, mô phỏng các
tập lệnh liên quan đến đề tài bằng phần mềm Matlab. Tuy nhiên đề tài này chỉ
dừng lại ở mức lý thuyết và mô phỏng trên ứng dụng để kiểm chứng kết quả

và còn nhiều hạn chế trên thực tế.
Bên canh những đề tài xử lý ảnh ứng dụng trong nhận diện cử chỉ, cịn có các đề
tài ứng dụng xử lý ảnh để nhận diện khuôn mặt như:
 “Xây dựng hệ thống điểm danh bằng khuôn mặt” do Quang Minh, sinh viên
khoa Công Nghệ Thông Tin, Học viện Kỹ Thuật Quân Sự thực hiện năm 2022.
Đạt được kết quả nhận diện chính xác 93.7% trong khoảng cách 0.3m và mơi
trường ánh sáng bình thường. Tuy nhiên còn hạn chế khi phải lấy mẫu đối
chiếu thủ công tường đối tượng và tốc độ load model chậm lên tới 4 giây, xử
lý còn hạn chế với các đối tượng có đeo phụ kiện hoặc ảnh bị thay đổi màu
sắc.
 Đề tài: “Ứng dụng xử lý ảnh cảnh báo tài xế ngủ gật” do sinh viên trường Đại
học Sư Phạm Kỹ Thuật thực hiện năm 2014, phát hiện được đúng 90% với
khoảng cách 0.2–1.2m, những còn tồn tại nhược điểm: Khơng thể quay trái
phải với góc lớn hơn 40 độ trên Window và 20 độ trên KIT, chưa đáp ứng
được tốc độ hay xử lý có phần hạn chế với người đeo kinh,…
Đề tài “Công nghệ nhận diện ứng dụng trong nhà thơng minh” của nhóm được xây
dựng với mong muốn thơng qua việc tìm hiểu và kế thừa các thành tựu đã có từ các cơng
trình nghiên cứu trước, góp phần cho sự phát triển trong nhận dạng cử chỉ. Về mặt kỹ
thuật, qua đề tài con người khơng chỉ có thể tương tác với các thiết bị chỉ qua một trang
Web hoặc ứng dụng trên điên thoại mà cịn có thể điều khiển các thiết bị mà không bị
hạn chế trong những cách tương tác truyền thống (như thơng qua bàn phím, con chuột
hoặc điện thoại…) bằng phương pháp giao tiếp trực tiếp bằng cử chỉ. Ngồi ra có thể
giúp người khiếm thính nhận biết ngơn ngữ qua cử chỉ tay, người có vấn đề về cơ bắp
có thể tự điều khiển được các thiết bị trong nhà một cách dễ dàng. Về mặt khoa học, hệ
thống nhận dạng cử chỉ của nhóm sử dụng phương pháp tối ưu và dữ liệu được huấn
luyện thơng qua các chương trình giúp nhận biết được chính xác các dạng cử chỉ, có khả

năng đưa ra kết quả với độ chính xác cao.
1.2. Mục tiêu đề tài


Thực hiện điều khiển được các thiết bị trong nhà thông minh thông qua mạng Wifi
một cách đơn giản và chính xác nhất. Từ đó kết hợp với lập trình phần mềm thu thập dữ
liệu ảnh và xử lí ảnh cử chỉ bàn tay, điều khiển các thiết đã kết nối trước đó thơng qua
việc sử dụng những cử chỉ đã được thu thập trước đó.
Thiết kế và hồn thiệt sản phẩm mơ hình điều khiển nhà thơng minh thơng qua ứng
dung nhận dạng cử chỉ bàn tay.
1.3. Tổng quan về nhà thơng minh
1.3.1. Nhà thơng minh là gì?
Nhà thơng minh (Tiếng Anh: Home Automation, Domotics, Smart Home hoặc
Intellihome) là kiểu nhà được lắp đặt các thiết bị điện, điện tử có thể được điều khiển
hoặc tự động hóa hoặc bán tự động, thay thế con người trong thực hiện một hoặc một số
thao tác quản lý, điều khiển. Hệ thống điện tử này giao tiếp với người dùng thông qua
bảng điện tử đặt trong nhà, ứng dụng trên điện thoại di động, máy tính bẳng hoặc một
giao diện web.
Trong nhà thơng minh, đồ dùng trong nhà từ phịng ngủ, phịng khách đều gắn các
bộ điều khiển điện tử có thể kết nối với Internet và điện thoại di động, cho phép chủ
nhân điều khiển vật dụng từ xa hoặc lập trình cho thiết bị ở nhà hoạt động theo lịch…
Các thiết bị này có thể đưa ra cách xử lý tình huống được lập trình trước, hoặc là được
điều khiển và giám sát từ xa. Sau đây là một số lời ích đem đến cho con người từ một
hệ thống tự động hóa trong nhà thơng minh.

Hình 1.1: Điều khiển hệ thống đèn qua Smartphone

- Lợi ích thứ 1: Tăng thêm sự an toàn qua việc điều khiển chiếu sang và thiết bị
điện (Appliance and Lighting Control).
Một lợi ích nữa của Home Automation đó là tăng thêm sự an tồn cho gia đình,

ngơi nhà. Con người có thể kiểm soát các thiết bị điện dù nhỏ và cả việc chiếu sang,


bằng một cái chạm nhẹ đầu ngón tay vào thiết bị công nghệ. Không chỉ tiết kiệm điện
thông qua việc tự động tắt khi khơng có người, hệ thống kiểm sốt ánh sang cịn có thể
tự động bật tắt đèn theo chu kỳ để tạo một cảm giác ln có người ở tại ngôi nhà. Điều
này làm tăng độ an tồn và an ninh cho căn nhà.
- Lợi ích thứ 2: Gia tăng quan sát thông qua Camera an ninh
Chúng ta khơng thể có mặt mọi lúc mọi nơi tại một thời điểm, vì vậy hệ thống
Camera an ninh trên tồn ngơi nhà giúp ta khơng bỏ lỡ những việc đang diễn ra tại bất
kỳ đâu trong ngôi nhà. Với hệ thống tự động hóa nhà thơng minh, có thể dễ dàng quan
sát, phát hiện chuyển động và âm thanh lạ sau đó ghi lại chúng tại một thời điểm nhất
định trong ngày.

Hình 1.2: Giám sát ngơi nhà qua Camera an ninh

- Lợi ích thứ 3: Gia tăng tiện nghi trong ngôi nhà
Thường khi chúng ta vội vã tời khỏi nhà vào mỗi sáng sớm và quên tắt và chỉnh
lại các thiết bị trong nhà. Kết quả là khi về thì chúng ta mới phát hiện ra được những
việc này, và trong suốt thời gian chúng ta rời nhà đó khi các thiết bị vẫn đang được bật
hồn tồn có thể gây ra các sự cố. Với hệ thống nhà thơng minh chúng ta khơng cần lo
về vấn đề đó nữa, khi ra khỏi nhà mà quên tắt hoặc điều chỉnh thiết bị trong nhà ta có
thể thực hiện ngay trên máy tính hoặc điện thoại một cách đơn giản và nhẹ nhàng từ xa.
- Lợi ích thứ 4: Tiết kiệm thời gian
- Lợi ích thứ 5: Tiết kiệm chi phí
1.3.2. Ngun tắc hoạt động của nhà thơng minh
Nhà thơng minh được hiểu là hệ thống các thiết bị điện tử gia dụng được kết hợp
với nhau thành mạng thiết bị và hoạt động theo kịch bản tùy biến nhằm tạo ra mơi trường
sống tiện nghi, an tồn, tiết kiệm năng lượng. Một hệ thống nhà thông minh cơ bản bao



gồm một máy tính điều khiển trung tâm, được gọi là máy chủ (Home Server), có nhiệm
vụ kết nối các thiết bị với nhau và điều khiển toàn bộ hệ thống nhà.
Các thiết bị gia dụng đầu cuối là những vật dụng điện tử trong nhà như các thiết bị
an ninh, hệ thống cửa, điều hòa, rèm mành, hệ thống đèn, quạt thơng gió, ti vi, bếp gas…
Các thiết bị này được kết nối với nhau trong hệ thống mạng thiết bị bằng công nghệ
truyền dữ liệu, qua đường điện (Power line communication – PLC) hoặc không dây
(Zigbee) và được kết nối trực tiếp đến Home Server.
Cuối cùng là hệ thống các phần mềm điều khiển ngôi nhà cài đặt trên Home Server,
trên các thiết bị điều khiển và các thiết bị điện tử gia dụng đầu cuối. Chủ nhân của Hệ
thống nhà thơng minh có thể kiểm sốt, điều khiển ngôi nhà cũng như các thiết bị trong
nhà bằng nhiều phương tiện như: điện thoại di động, tablet, laptop… ở bất kì đâu và bất
kỳ lúc nào.
1.3.3. Những xu hướng phát triển của nhà thông minh ở Việt Nam
Vài năm trở lại đây, khi thế giới đang dần tiến vào kỷ nguyên Internet of Things
(IoTs), kết nối mọi vật qua Internet, nhà thông minh trở thành một xu hướng công nghệ
tất yếu, là tiêu chuẩn của nhà ở hiện đại. Việt Nam cũng khơng nằm ngồi xu hướng
này. Nhà thơng minh Việt Nam là một khái niệm khơng cịn xa lạ với nhiều người.
Không những thế, thị trường nhà thông minh Việt Nam phát triển mạnh chủ yếu tại
những thành phố lớn như Hải Phòng, Hà Nội, Đà Nẵng, tp Hồ Chí Minh. Bởi tại những
thành phố lớn, việc tiếp cận các khái niệm và công nghệ mới dễ dàng hơn.
Xu hướng nhà thông minh trên thế giới:
Đối với các cơng ty lớn về cơng nghệ thì cuộc cánh mạng công nghệ 4.0 và công
nghệ IoT được xem là cơ hội tỉ USD trên thị trường đầy tiềm năng này. Theo một thống
kê của công ty nghiên cứu thị trường Statista thì vào năm 2020 giá trị thị trường của
Smarthome nhà thông minh dự báo đạt tới 43 tỉ USD. Con số này tăng gấp 3 lần so với
năm 2014. Xu hướng nhà thông minh được dự báo như một trong những ứng dụng cơng
nghệ một cách tồn diện nhất vào cuộc sống là cả một căn hộ thông minh chứ không chỉ
là một thiết bị công nghệ thông minh.
Xu hướng nhà thông minh tại Việt Nam:

Với những tiềm năng phát triển đó, có nhiều nhà phát triển và xâm nhập thị trường
nhà thông minh Việt Nam như Lumi, Bkav,… hay tới các nhà đầu tư nước ngoài khác.
Tuy chỉ mới phát triển từ 3 5 năm nay, nhưng nhiều đơn vị trong nước đã nắm được thị
phần phân phối nhà thông minh tại Việt Nam khá lớn như Lumi, Bkav. Các doanh
nghiệp ở Việt Nam phần lớn cung cấp các giải pháp nhà thông minh thiên về giải pháp
an ninh, an tồn, điều khiển thiết bị thơng qua Smartphone, điều khiển qua loa thông
minh,…


1.4. Giới thiệu chung về hệ thống xử lý ảnh
Xử lý ảnh là một lĩnh vực mang tính khoa học và cơng nghệ. Nó là một ngành khoa
học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh,
kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên dụng riêng
cho nó.
Xử lý ảnh được đưa vào giảng dạy ở bậc đại học ở nước ta khoảng chục năm nay.
Nó là mơn học liên quan đến nhiều lĩnh vực và cần nhiều kiến thức cơ sở khác. Đầu tiên
phải kể đến xử lý tín hiệu số là một mơn học hết sức cơ bản cho xử lý tín hiệu chung,
các khái niệm về tích chập, các biến đổi Fourier, biến đổi Laplace, các bộ lọc hữu hạn…
Thứ hai, các cơng cụ tốn như đại số tuyến tính, xác suất thống kê. Một số kiến thứ cần
thiết như trí tuệ nhân tạo, mạng nơron nhân tạo cũng được đề cập trong q trình phân
tích và nhận dạng ảnh.
Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh. Đầu tiên, ảnh tự nhiên
từ thế giới ngoài được thu nhận qua các thiết bị thu (như camera, máy chụp ảnh). Trước
đây, ảnh thu qua camera là các ảnh tương tự (loại camera ống kiểu CCIR). Gần đây, với
sự phát triển của công nghệ, ảnh màu hoặc đen trắng được lấy ra từ camera, sau đó nó
được chuyển trực tiếp thành ảnh số tạo thuận lợi cho xử lý tiếp theo (máy ảnh số hiện
nay là một thí dụ gần gũi).

Hình 1.3: Sơ đồ khối tiến trình xử lý ảnh cơ bản


Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh; có thể quét từ ảnh chụp bằng máy
quét ảnh.
- Phần thu nhận ảnh (Image Acquisition):
Ảnh có thể nhận qua camera màu hoặc đen trắng. Thường ảnh nhận qua camera là
ảnh tương tự, cũng có loại camera đã số hố. Camera thường dùng là loại qt dịng,
ảnh tạo ra có dạng hai chiều. Chất lượng một ảnh thu nhận được phụ thuộc vào thiết bị
thu, vào môi trường (ánh sáng, phong cảnh…).
- Tiền xử lý (Image Processing):


Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào bộ tiền xử
lý để nâng cao chất lượng. Chức năng chính của bộ tiền xử lý là lọc nhiễu, nâng độ
tương phản để làm ảnh rõ hơn, nét hơn.
- Phân đoạn (Segmentation) hay phân vùng ảnh:
Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn
phân tích, nhận dạng ảnh… Đây là phần phức tạp khó khăn nhất trong xử lý ảnh và cũng
dễ gây lỗi, làm mất độ chính xác của ảnh. Kết quả nhận dạng ảnh phụ thuộc rất nhiều
vào công đoạn này.
- Biểu diễn ảnh (Image Representation):
Đầu ra ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn)
cộng với mã liên kết với các vùng lận cận. Việc biến đổi các số liệu này thành dạng thích
hợp là cần thiết cho xử lý tiếp theo bằng máy tính. Việc chọn các tính chất để thể hiện
ảnh gọi là trích chọn đặc trưng (Feature Selection) gắn với việc tách các đặc tính của
ảnh dưới dạng các thơng tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượng này
với đối tượng khác trong phạm vi ảnh nhận được.
- Nhận dạng và nội suy ảnh (Image Recognition and Interpretation):
Nhận dạng ảnh là quá trình xác định ảnh. Quá trình này thường thu được bằng cách
so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước. Nội suy là phán đoán theo ý
nghĩa trên cơ sở nhận dạng. Theo lý thuyết về nhận dạng, các mơ hình tốn học về ảnh
được phân theo hai loại nhận dạng ảnh cơ bản:

 Nhận dạng theo tham số
 Nhận dạng theo cấu trúc
Một số đối tượng nhận dạng khá phổ biến hiện nay đang được áp dụng trong khoa
học và công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng
văn bản (text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người…
- Cơ sở tri thức (Knowledge Base):
Như đã nói ở trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối,
dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu. Trong nhiều
khâu xử lý và phân tích ảnh ngồi việc đơn giản hóa các phương pháp toán học đảm bảo
tiện lợi cho xử lý, người ta mong muốn bắt chước quy trình tiếp nhận và xử lý ảnh theo
cách của con người. Trong các bước xử lý đó, nhiều khâu hiện nay đã xử lý theo các
phương pháp trí tuệ con người.
- Mơ tả (biểu diễn ảnh):
Ảnh sau khi số hóa sẽ được lưu vào bộ nhớ, hoặc chuyển sang các khâu tiếp theo
để phân tích. Nếu lưu trữ ảnh trực tiếp từ các ảnh thơ, địi hỏi dung lượng bộ nhớ cực
lớn và không hiệu quả theo quan điểm ứng dụng và công nghệ. Thông thường, các ảnh


thơ đó được đặc tả (biểu diễn) lại (hay đơn giản là mã hoá) theo các đặc điểm của ảnh
được gọi là các đặc trưng ảnh (Image Features) như: biên ảnh (Boundary), vùng ảnh
(Region).
1.5. Công nghệ nhận dạng bàn tay
Bàn tay con người có cấu trúc xương phức tạp bao gồm rất nhiều khớp nối với
nhau. Vì số bậc tự do của bàn tay người là rất lớn nên việc nhận dạng cử chỉ bàn tay trở
nên một thách thức lớn. Có nhiều nghiên cứu về nhận dạng cử chỉ với các giải thuật
khác nhau như: nhận dạng phép trừ nền, dựa vào màu sắc, hình dáng, các đặc trưng của
bàn tay, optical flow, mean shift….
1.5.1. Nhận dạng bàn tay dựa vào màu sắc và hình dáng
Màu da là một đặc trưng quan trọng để định vị và tracking bàn tay người. Tuy
nhiên thuật toán dựa trên màu da phải đối mặt với khó khăn đó là phải phân biệt đối

tượng có màu tương tự với bàn tay như khn mặt và cánh tay người. Để giải quyết vấn
đề này, người sử dụng phải mặc áo sơ mi dài và phải hạn chế trong khung nền trong đó
màu sắc các đối tượng không được tương đồng với màu da người. Thuật toán này cũng
rất nhạy với các điều kiện chiếu sáng khác nhau. Khi điều kiện ánh sáng không đáp ứng
u cầu thì bộ nhận dạng thường khơng nhận ra bàn tay.
Wuetal đã đề xuất thuật toán bám theo đối tượng dựa trên màu sắc không ổn định
bằng cách học hai phương pháp biểu diễn khác nhau cho sự phân bố màu sắc và gọi
thuật toán mới này là structure adaptive self-organizing map (SASOM). Kết quả trong
việc định vị bàn tay đã chỉ ra rằng thuật tốn có thể kiểm sốt tốt một vài điểm khó trong
tracking đối tượng có màu sắc không ổn định.
1.5.2. Nhận dạng dựa vào ngưỡng trên mỗi kênh màu
Thuật toán dựa trên đặc trưng bàn tay trích xuất đặc trưng trong một vùng ảnh nhất
định như đầu ngón tay hoặc biên bàn tay, và sử dụng một vài phương pháp suy luận để
tìm ra hình dạng hoặc kết hợp những đặc trưng cụ thể để tạo nên một cử chỉ bàn tay.
Đối với cách tiếp cận dựa trên đặc trưng bàn tay, việc phân đoạn những ảnh không
bị nhiễu là bước cần thiết để phục hồi những đặc trưng của bàn tay. Đây không phải là
nhiệm vụ dễ dàng khi gặp phải những ảnh nền phức tạp.
1.5.3. Optical Flow
Optical flow là thuật toán dựa trên phân tích chuyển động của bàn tay. Việc bám
theo bàn tay dựa vào quỹ đạo chuyển động và kết hợp với bộ phát hiện màu da. Bộ lọc
theo thời gian dùng thuật toán Viterbi để nhận dạng quỹ đạo của bàn tay và thuật toán
kiểm tra phụ được bổ sung vào thuật toán Viterbi để đảm bảo chắc chắn quỹ đạo trích
xuất sẽ chứa vị trí bàn tay của cùng một bàn tay đã được nhận dạng trước đó. Những kết
quả thực tế cho thấy hệ thống có khả năng bám theo bàn tay ổn định.


1.5.4. Phương pháp trừ nền
Bàn tay được phát hiện bằng phương pháp trừ nền, sử dụng kỹ thuật “codebook”
kết hợp với thư viện OpenCV.
Các điểm đầu mút được phát hiện bằng thuật toán “convex hull 2”, các điểm lõm

được phát hiện bằng thuật toán “convexity defect”.
Dựa vào số điểm lồi và lõm người ta sẽ biết được số ngón tay được đưa lên.

Hình 1.4: Hình minh họa kết quả thuật toán trừ nền


CHƯƠNG II: THIẾT KẾ PHẦN CỨNG
2.1. Tổng quan về các linh kiện trong đề tài
Với nhiệm vụ của đề tài đặt ra là điều kiện được các thiết bị điện, qua q trình
nghiên cứu tìm hiểu tài liệu chúng tơi đã chọn giải pháp tối ưu cho khối xử lý trung tâm
là ESP 32 được phát triển bởi Espessif System. Là một vi điều khiển 32bit, đáp ứng đầy
đủ các u cầu ban đầu đặt ra, ngồi ra cịn có thể mở rộng thêm một số chức năng khác
khi cải tiến hệ thống.
2.1.1. Vi điều khiển ESP32
a. Tổng quan về ESP32
ESP32 là một chip được tích hợp cơng nghệ Wifi và Bluetooth với công nghệ tiêu
thụ năng lượng cực thấp. Nó cung cấp một nền tảng tích hợp mạnh mẽ, đáp ứng nhu cầu
hiệu năng tốt nhất, tính linh hoạt, thiết kế nhỏ gọn, hiệu suất cao và độ tin cậy trong
nhiều ứng dụng. Các dòng chip ESP32 bao gồm: ESP32-D0WDQ6, ESP32-D0WD,
ESP32-D2WD và ESP32-S0WD.
Espressif đã thiết kế và sản xuất ra một số module để người dùng dễ dàng tiếp cận
hơn với dịng chip ESP32. Các thành phần chính trên những module này bao gồm chip
ESP32, bộ tạo dao động thạch anh, mạch ăng-ten, chỉ khác nhau về một số chức năng
tùy từng phiên bản như số lượng chân GPIO, các thiết bị ngoại vi được thêm vào như:
màn LCD, bảng cảm ứng, khe cắm thẻ SD, module máy ảnh, …dưới đây là mội số phiên
bản được phát triền và đưa vào sử dụng.
Bảng 2.1: Các phiên bản Module ESP32

Thành phần
Module


Chip

Flash

RAM

ESP-WROOM-32

ESP32-D0WDQ6

4MB

-

ESP-WROOM-32

ESP32-D0WD

4MB

-

ESP-WROOM-32

ESP32-D0WD

4MB

-


ESP-SOLO-1

ESP32-S0WD

4MB

-

ESP-WROVER

ESP32-D0WDQ6

4MB

8MB

ESP-WROVER-I

ESP32-D0WDQ6

4MB

8MB


Phiên bản ESP32-WROOM-32 là một module vi điều khiển (MCU) Wifi
(Wireless Fidelity) – BT (Bluetooth) – BTE (Bluetooth Low Energy) phổ biến và mạnh
mẽ phục vụ cho nhiều ứng dụng khác nhau từ những ứng dụng đơn giản như điều khiển
thiết bị, đọc giá trị cảm biến đến những nhiệm vụ phức tạp như mã hóa giọng nói, phát

nhạc trực tuyến, giải mã MP3,…

Hình 2.1: Module ESP32-WROOM-32

Module này được xây dựng với lõi nhân là chip ESP32-D0WDQ6, chip được thiết
kế để có thể mở rộng. Có 2 lõi CPU (Central Processing Unit) có thể kiểm sốt riêng
biệt và tần số xung đồng hồ dao động từ 80MHz đến 240MHz. Module hoạt động ổn
định ở điện áp 3.3V, nhiệt độ 25oC.
Bảng 2.2: Thông số kiến nghệ cho ESP32-WROOM-32

Ký hiệu

Chức năng

Min

Đề nghị

Max

Đơn vị

VDD

Điện áp cung cấp

2.7

3.3


3.6

V

I

Dịng điện cung cấp

0.5

-

-

A

T

Nhiệt độ

-40

+25

+85

o

C


Do tích hợp Bluetooth, Bluetooth LE, Wifi nên rất nhiều ứng dụng có thể thực hiện
được trên module. Sử dụng Wifi cho phép kết nối một cách dễ dàng. Module cũng hỗ
trợ truyền dữ liệu lên đến 150Mbps.
Đa số các ứng dụng của ESP32 được phục vụ cho các dự án IoT như: Nhà thơng
minh, robot cơng nghiệp, nhận dạng giọng nói, nhận dạng hình ảnh, ứng dụng chăm sóc
sức khoe,…
b. Cấu hình của ESP32
Chip ESP32 tiêu thụ mức năng lượng thấp, nhiều chế độ hoạt động giúp giảm thiểu
tối đa năng lượng mà chip tiêu tốn.


Ví dụ cảm biến trong ứng dụng IoT, ESP32 được đánh thức theo chu kỳ và chỉ
phát hiện khi có một điều kiện cụ thể.
Chip ESP32 có khả năng tích hợp cao Wifi và Bluetooth cho các ứng dụng IoT,
với khoảng 20 thiết bị ngoại vi. ESP32 tích hợp ăng ten, sóng RF, bộ khuếch đại cơng
suất, bộ khuếch đại thu tiếng ồn, module quản lý năng lượng,…
Bảng 2.3: Bảng thông số kỹ thuật cơ bản của module ESP-WROOM-32

Loại

Đặc trưng
Giao thức

Thông số
802.11b/g/n (802.11 lên đến 150Mbps)

Wifi
Tần số
Giao thức


2.4GHz  2.5GHz
Bluetooth v4.2 và Bluetooth Lower Energy
NZIF với độ nhạy -97dBm

Bluetooth

Radio

Máy pháp Class-1, Class-2, Class-3
AFH

Audio

CVSD và SBC
Thẻ SD, UART, SPI, SDIO, I2C, Led PWM,

Giao tiếp Module

Chip cảm biến

Phần cứng

Motor PWM, I2S
IR, Counter, GPIO, cảm biến cảm ứng,
ADC, DAC
Hall sensor (từ trường)

Thạch anh

40MHz


SPI Flash

4MB

Điện áp hệ thống
Dịng hệ thống

2.7V  3.6V
Trung bình: 80mA

Dịng điện tối thiểu
của nguồn cung cấp

500mA

Nhiệt độ hoạt động

-40oC  +85oC

Kích thước

18mm x 25.5mm x 3.1mm

Bảng 2.4: Bảng chân Module ESP32-WROOM-32


Chức năng

Loại


STT

Tên

1

GND

Ground

P

2

3V3

Chân nguồn cung cấp 3V3

P

3

EN

Cho phép module hoạt động, mức cao

I

4


SENSOR_VP GPIO36, ADC1_CH0, RTC_GPIO0

I

5

SENSOR_VN GPIO39, ADC1_CH3, RTC_GPIO3

I

6

IO34

GPIO34, ADC1_CH6, RTC_GPIO4

I

7

IO35

GPIO35, ADC1_CH7, RTC_GPIO5

I

8

IO32


9

IO33

GPIO33, XTAL_32K_N, ADC1_CH5,
TOUCH8, RTC_GPIO8

I/O

10

IO25

GPIO25, DAC_1, ADC2_CH8, RTC_GPIO6

I/O

11

IO26

GPIO26, DAC_2, ADC2_CH9, RTC_GPIO7

I/O

12

IO27


GPIO27, ADC2_CH7, TOUCH7, RTC_GPIO17

I/O

13

IO14

GPIO14, ADC2_CH6, TOUCH6, RTC_GPIO16

I/O

14

IO12

GPIO12, ADC2_CH5, TOUCH5, RTC_GPIO15

I/O

15

GND

Ground

16

IO13


GPIO13, ADC2_CH4, TOUCH4, RTC_GPIO14

I/O

17

SHD/SD2

GPIO9, SD_DATA2, U1RXD

I/O

18

SWP/SD3

GPIO10, SD_DATA3, U1TXD

I/O

19

SCS/CMD

GPIO11, SD_CMD, U1RTS

I/O

20


SCK/CLK

GPIO6, SD_CLK, U1CTS

I/O

21

SDO/SD0

GPIO7, SD_DATA0, U2RTS

I/O

22

SDI/SD1

GPIO8, SD_DATA1, U2CTS

I/O

23

IO15

GPIO15, ADC2_CH3, TOUCH3, RTC_GPIO13

I/O


24

IO2

GPIO2, ADC2_CH2, TOUCH2, RTC_GPIO12

I/O

25

IO0

GPIO32, XTAL_32K_P, ADC1_CH4,
TOUCH9, RTC_GPIO9

GPIO0, ADC2_CH1, TOUCH1, RTC_GPIO11,
CLK_OUT1

I/O

P

I/O


26

IO4

GPIO4, ADC2_CH0, TOUCH0, RTC_GPIO10


I/O

27

IO16

GPIO16, HS1_DATA4, U2RXD

I/O

28

IO17

GPIO17, HS1_DATA5, U2TXD

I/O

29

IO5

GPIO5, HSI_DATA6

I/O

30

IO18


GPIO18, HSI_DATA7

I/O

31

IO19

GPIO19, U0CTS

I/O

32

NC

33

IO21

GPIO21, VSPIHD

I/O

34

RXD0

GPIO3, U0RXD, CLK_OUT2


I/O

35

TXD0

GPIO1, U0TXD, CLK_OUT3

I/O

36

IO22

GPIO22, VSPIWP, U0RTS

I/O

37

IO23

GPIO23, VSPID

I/O

38

GND


Ground

-

-

P

* P (Nguồn), I (Input), I/O (Input/ Output).

c. Chức năng tích hợp trong ESP32
+) CPU
Chip ESP32 là bộ xử lý lõi kép (Dual core) của vi điều khiển Xtensa 32bit LX6
với các đặc trưng:
- Hỗ trợ xung nhịp lên đến 240MHz.
- Hỗ trợ DSP như bộ nhân 32bit, bộ chia 32bit, MAC 40bit.
- Hỗ trợ 32 vector interrupt.
Bộ nhớ nội của ESP32 bao gồm:
- 448KB ROM cho việc khởi động và các chức năng cốt lõi.
- 520KB SRAM trên chịp cho dữ liệu.
- 8KB SRAM trong RTC (Real Time Control): được gọi là bộ nhớ RTC FAST.
- 8KB SRAM trong RTC: được gọi là bộ nhớ RTC LOW.
IKbit eFuse: 256bit sử dụng cho hệ thống, 768bit chuyển đổi cho ứng dụng.
External Flash (bộ nhớ flash ngoài) và SRAM


ESP32 hỗ trợ nhiều external QSPI flash và SRAM, có thể truy cập ở tốc độ cao.
SRAM được hỗ trợ lên đến 8MB, đọc và ghi 8bit, 16bit, 32bit.


Hình 2.2: Cấu trúc và địa chỉ bộ nhớ của ESP32

+) Timer 64bit
Có 4 Timer bên trong ESP32. Chúng đều là bộ định thời 64bit dựa trên bộ chia
trước 16bit và bộ định thời đếm lên, xuống. Cho phép cấu hình Timer đếm lên, đếm
xuống.Cho phép dùng và tiếp tục bộ đếm thời gian.
+) Timer Watchdogs (Bộ định thời giảm sát)
ESP32 có 3 Timer Watchdogs bao gồm 2 module hẹn giờ (Main WatchdogsTimer)
và một module RTC (RTC Watchdog Timer). Một bộ đếm thời gian Watchdog có 4 giai
đoạn, mỗi giai đoạn có thể kích hoạt một trong bốn hành động là: ngắt, thiết lập lại CPU,
thiết lập lại lõi, thiết lập lại hệ thống.
+) CPU Clock
Khi được reset, dao động thạch anh bên ngoài được đặt lại mặc định cho CPU. Dao
dộng thạch anh kết nối với PLL (Phase-Locked Loop) để tạo ra xung tần số cao
(160MHz). Ngồi ra, ESP32 có bộ dao động nội 8MHz và có thể sử dụng được bộ dao
động này cho một số ứng dụng nhất định.
+) RTC Clock (Real Time Clock)
RTC Clock có các nguồn hoạt động:
- Thạch anh bên ngoài tốc độ thấp (32KHz).
- Thạch anh bên ngoài với bộ chia 4.
- Bộ dao động nội RC (150KHz, có thể điều chỉnh được).
-

Bộ dao động nội 8MHz.


-

Xung nội 32.25KHz.


Khi ở chế độ bình thường, cần truy cập CPU nhanh hơn, ứng dụng có thể chọn
xung tốc độ cao bên ngoài với bộ chia 4 hoặc dao động nội 8MHz. Khi hoạt động ở chế
độ năng lượng thấp, ứng dụng có thể chọn thạch anh bên ngồi tốc độ thấp (v32KHz),
dao động nội RC hoặc xung nội 31.25KHz.
d. Wifi và Bluetooth
ESP32 thực hiện giao thức TCP/IP và Wifi 802.11 b/g/n, quản lý năng lượng được
xử lý để giảm thiểu thời gian thực hiện các tác vụ. Các thư viện của Wifi cung cấp để
định cấu hình và giám sát chức năng kết nối mạng ESP32, nó cấu hình cho:
-

Chế độ trạm (hay chế độ STA hoặc chế dộ Wifi client): ESP32 kết nối với một
điểm truy cập.

-

Chế độ AP (hay chế độ Soft-AP hoặc chế độ điểm truy cập): các trạm kết nổi

-

với ESP32.
Chế độ kết hợp AP-STA (ESP32 đồng thời là điểm truy cập và là trạm được

-

kết nối với các điểm truy cập khác).
Các chế độ bảo mật khác nhau cho các chế độ trên (WPA, WPA2, WEP, ...).
Quét các điểm truy cập (chủ động và thụ động).
Chế độ giám sát các gói Wifi của tiêu chuẩn IEEE802.11.

ESP32 tích hợp bộ điều khiển liên kết Bluetooth, thực hiện các giao thức như

điều chế, giải điều chế, xử lý gói, xử lý luồng bit, ...
e. Thiết bị ngoại vi và cảm biến của ESP32
GPIO (General Purpose Input/Output Interface): ESP32 với số lượng lớn chân
GPIO tùy thuộc vào từng phiên bản module, mỗi chân được tích hợp nhiều chức năng
khác nhau bằng cách lập trình thanh ghi.
Hầu hết các chân GPIO số (digital) có thể được cấu hình điện trở kéo lên (pull-up)
hoặc kéo xuống (pull-down) hoặc trở kháng cao. Mỗi chân có thể có nhiều chức năng
khác nhau như SDIO, UART, SPI,...
ADC (Analog to Digital Converter): ESP32 tích hợp ADC 12bit và hổ trợ đo 18
kênh. Với thiết lập thích hợp, các ADC có thể được cấu hình để đo điện áp tối đa 18
chân.
DAC (Digital to Analog Converter): ESP32 có hai kênh DẠC 8bit được sử dụng
để chuyển đổi tín hiệu số sang tín hiệu analog, được tích hợp điện trở và bộ đệm.
Touch Sensor (Cảm ứng điện dung): ESP32 có 10 chân GPIO sử dụng được cảm
ứng điện dung, phát hiện vật thể bằng cách chạm vào các chân GPIO.
Bộ điều khiển SDIO/SPI: ESP32 tích hợp giao tiếp thiết bị SD phù hợp với tiêu
chuẩn SDIO, hỗ trợ các tính năng sau:



×