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

đồ án môn họcđồ án khoa học dữ liệu và ứng dụng 1

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.38 MB, 18 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC VĂN LANGKHOA KỸ THUẬT CƠ – ĐIỆN VÀ MÁY TÍNH</b>

<b>BỘ MƠN KHOA HỌC DỮ LIỆU</b>

<b>ĐỒ ÁN MÔN HỌC</b>

<b>Đồ án Khoa học dữ liệu và ứng dụng 1Đề tài: Human Recognition</b>

Nguyn Quc NamPhan Duy Th%nhV& Xuân Ph)tNguyn H%o Phong

Hồ Chi Minh, ng%y / th)ng / năm

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

about:blank 2/18

<b>LỜI CẢM ƠN</b>

Chúng em xin chân th%nh cảm ơn vì đã đọc b%i b)o c)o về ước lượng tư thế con người sửdụng OpenPose. Đây l% một công nghệ quan trọng trong lĩnh vực thị gi)c m)y tinh v%nhận dạng hình ảnh. B%i b)o c)o n%y giúp chúng ta hiểu r& về c)ch sử dụng mã nguồnPython để triển khai OpenPose v% ước lượng tư thế con người trên hình ảnh.

Chúng em hy vọng rằng b%i b)o c)o đã cung cấp cho bạn những kiến thức cơ bản về c)chc%i đặt, cấu hình v% sử dụng OpenPose trong ứng dụng thực tế. Bạn có thể tham khảo mãnguồn v% c)c phần giải thich chi tiết để hiểu r& hơn về quy trình l%m việc của OpenPosev% c)ch nó ước lượng tư thế con người.

OpenPose l% một cơng nghệ mạnh mẽ v% có rất nhiều ứng dụng tiềm năng trong nhiềulĩnh vực, bao gồm thể thao, y tế, gi)o dục v% nhiều lĩnh vực kh)c. Chúng em khuyếnkhich bạn tiếp tục kh)m ph) v% ứng dụng OpenPose để nâng cao khả năng phân tich v%hiểu về tư thế con người.

Một lần nữa, xin chân th%nh cảm ơn vì đã đọc b%i b)o c)o n%y. Hy vọng nó đã mang lạicho bạn sự hiểu biết mới v% kh)m ph) thú vị về ước lượng tư thế con người sử dụngOpenPose.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>NHẬN XÉT CỦA GIẢNG VIÊN</b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

about:blank 4/18

<b>DANH MỤC THUẬT NGỮ ANH – VIỆT</b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>DANH MỤC BẢNG</b>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

about:blank 6/18

<b>DANH MỤC HÌNH</b>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>1.5Phương pháp nghiên cứu: Trình bày các phương pháp nghiên cứu được sửdụng...12</b>

<b>CHƯƠNG 2: CƠ SỞ LÝ THUYẾT...13</b>

<b>CHƯƠNG 3: TỔNG QUAN VỀ THUẬT TOÁN....14</b>

<b>CHƯƠNG 5: KẾT QUẢ NGHIÊN CỨU...16</b>

<b>CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN...17</b>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

about:blank 8/18

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>LỜI MỞ ĐẦU</b>

Trong thời đại công nghệ s hiện nay, thị gi)c m)y tinh v% nhận dạng hình ảnh đang trởth%nh những lĩnh vực đầy tiềm năng v% ph)t triển mạnh mẽ. Cùng với sự ph)t triển củac)c thuật to)n v% cơng nghệ, chúng ta đã có khả năng ước lượng v% phân tich tư thế conngười từ c)c hình ảnh v% video. Điều n%y đã mở ra những c)nh cửa mới trong việc )pdụng công nghệ thị gi)c m)y tinh v%o nhiều lĩnh vực kh)c nhau như y tế, gi)o dục, thểthao, an ninh v% nhiều lĩnh vực kh)c.

Trong b%i b)o c)o n%y, chúng ta sẽ tìm hiểu về một cơng nghệ quan trọng trong lĩnh vựcn%y, đó l% OpenPose. OpenPose l% một dự )n mã nguồn mở ph)t triển bởi CMUPerceptual Computing Lab, cho phép chúng ta ước lượng v% phân tich tư thế con người từhình ảnh v% video. Bằng c)ch sử dụng OpenPose, chúng ta có thể nhận diện v% theo d&ic)c điểm đặc trưng trên cơ thể con người như cổ, vai, khuỷu tay, đầu gi v% c)c bộ phậnkh)c.

B%i b)o c)o sẽ đi sâu v%o việc giải thich c)ch sử dụng mã nguồn Python để triển khaiOpenPose v% ước lượng tư thế con người trên hình ảnh. Chúng ta sẽ cùng tìm hiểu c)cbước c%i đặt, cấu hình v% thực thi OpenPose, v% tìm hiểu c)ch )p dụng công nghệ n%y v%oc)c ứng dụng thực tế. Bên cạnh đó, chúng ta cũng sẽ xem xét c)c vấn đề liên quan v% vidụ minh họa để có c)i nhìn tổng quan về ứng dụng của OpenPose trong thực tế.

B%i b)o c)o n%y hy vọng sẽ giúp bạn hiểu r& hơn về công nghệ ước lượng tư thế conngười v% c)ch sử dụng OpenPose để )p dụng v%o c)c dự )n v% ứng dụng của riêng bạn.Chúng ta hãy bắt đầu h%nh trình kh)m ph) thế giới của OpenPose v% kh)m ph) nhữngtiềm năng đầy hứa hẹn m% nó mang lại.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

about:blank 10/181.T m t t

B%i b)o c)o n%y tập trung v%o việc giới thiệu v% giải thich c)ch sử dụng OpenPose - mộtcông nghệ quan trọng trong lĩnh vực thị gi)c m)y tinh v% nhận dạng hình ảnh. OpenPosecho phép ước lượng v% phân tich tư thế con người từ c)c hình ảnh v% video, mở ra nhiềuứng dụng trong y tế, gi)o dục, thể thao v% nhiều lĩnh vực kh)c.

B%i b)o c)o bắt đầu bằng một giới thiệu tổng quan về đề t%i v% phương ph)p nghiên cứu.Tiếp theo, c)c định nghĩa được sử dụng trong b%i viết được trình b%y, giúp đảm bảo sựhiểu r& về c)c thuật ngữ v% kh)i niệm liên quan đến OpenPose.

Sau đó, mơ hình của mã nguồn được mô tả chi tiết, bao gồm c)ch c%i đặt thư việnOpenCV v% OpenPose, cấu hình tham s v% thực hiện ước lượng tư thế con người trênhình ảnh. C)c bước trong mơ hình bao gồm tải v% cấu hình thư viện, đọc v% xử lý hìnhảnh, khởi tạo v% cấu hình OpenPose, v% thực hiện ước lượng tư thế.

Bên cạnh đó, b%i b)o c)o cũng đề cập đến c)c vấn đề liên quan đến đề t%i, bao gồm c)ccông trình nghiên cứu v% ứng dụng kh)c liên quan đến ước lượng tư thế con người. Mộtvi dụ minh họa cụ thể được cung cấp để minh họa c)ch sử dụng OpenPose trong thực tế.Cui cùng, b%i b)o c)o đề cập đến ứng dụng của đề t%i, nhấn mạnh những lợi ich v% tiềmnăng của việc ước lượng tư thế con người sử dụng OpenPose trong c)c lĩnh vực kh)cnhau. Cui cùng, kết luận tổng kết lại những kiến thức đã học được v% nhấn mạnh tầmquan trọng của việc hiểu v% )p dụng công nghệ ước lượng tư thế con người v%o c)c dự )nv% ứng dụng thực tế.

2.Gi i thi u

<b>1.1.Lý do chọn đề tài </b>

Tinh quan trọng v% ứng dụng rộng rãi: Ước lượng tư thế con người l% một lĩnh vực quantrọng trong thị gi)c m)y tinh v% nhận dạng hình ảnh. Nó có ứng dụng rộng rãi trong nhiềulĩnh vực như y tế, thể thao, gi)o dục, an ninh v% nhiều lĩnh vực kh)c. Hiểu về c)ch sửdụng OpenPose để ước lượng tư thế con người có thể giúp chúng ta )p dụng cơng nghện%y v%o c)c dự )n v% ứng dụng của mình.

Sự ph)t triển nhanh chóng của OpenPose: OpenPose l% một dự )n mã nguồn mở ph)ttriển bởi CMU Perceptual Computing Lab v% đã nhận được sự quan tâm lớn từ cộng đồngnghiên cứu v% cơng nghiệp. Nó cung cấp c)c cơng cụ v% thư viện mạnh mẽ để ước lượngv% phân tich tư thế con người trên hình ảnh v% video. Việc nắm bắt được c)ch sử dụngOpenPose có thể đóng góp v%o việc theo kịp xu hướng v% tiến bộ trong lĩnh vực n%y.Tinh thực tin v% ứng dụng ngay lập tức: Việc ước lượng tư thế con người có thể )p dụngtrong nhiều lĩnh vực thực tế, từ việc phân tich cử chỉ v% động t)c trong thể thao đến theod&i v% phân tich tư thế l%m việc trong y tế v% gi)o dục. Hiểu c)ch sử dụng OpenPose giúp

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

chúng ta xây dựng c)c ứng dụng v% hệ thng dựa trên ước lượng tư thế con người để giảiquyết c)c vấn đề thực tế hiện tại.

Sự ph)t triển của thị gi)c m)y tinh: Thị gi)c m)y tinh v% nhận dạng hình ảnh l% một lĩnhvực đang ph)t triển nhanh chóng. Hiểu về c)ch sử dụng OpenPose để ước lượng tư thếcon người giúp chúng ta thấy được tiềm năng v% khả năng của công nghệ n%y trong việcxử lý v% phân tich hình ảnh. Đề t%i n%y có thể giúp chúng ta nắm bắt

<b>1.2.Mục tiêu nghiên cứu: </b>

Mục tiêu của b%i b)o c)o n%y l% trình b%y về qu) trình ước lượng tư thế con người sửdụng mã nguồn có sẵn, giải thich c)c định nghĩa v% thuật ngữ liên quan, mô tả chi tiết vềc)c bước v% thuật to)n được sử dụng, đưa ra vi dụ minh họa, nêu c)c vấn đề liên quan v%c)c ứng dụng của ước lượng tư thế con người.

<b>Phương pháp nghiên cứu:</b>

Phương ph)p nghiên cứu sử dụng trong b%i b)o c)o n%y l% sử dụng thư viện OpenPosev% mã nguồn Python để xây dựng một chương trình nhận dạng v% theo d&i c)c điểmchinh trên cơ thể người. Mã nguồn được cung cấp sẵn v% được c%i đặt bằng c)ch sửdụng CMake v% c)c công cụ biên dịch.

<b>2. Các định nghĩa được sử dụng</b>

Trong b)o c)o n%y, chúng tôi sử dụng c)c định nghĩa sau:

Ước lượng tư thế con người: Qu) trình nhận dạng v% theo d&i c)c điểm chinh trên cơ thểngười để x)c định tư thế v% động t)c của con người.

OpenPose: Thư viện mã nguồn mở cho việc ước lượng tư thế con người, sử dụng deeplearning v% computer vision.

Python: Ngôn ngữ lập trình cao cấp, được sử dụng trong b%i b)o c)o n%y để xây dựng v%chạy mã nguồn ước lượng tư thế.

<b>3. Các nghiên cứu trong và ngoài nước</b>

OpenPose l% một công nghệ ước lượng tư thế con người ph)t triển bởi CMU PerceptualComputing Lab. Công nghệ n%y đã thu hút sự quan tâm v% nghiên cứu từ cộng đồngnghiên cứu v% công nghiệp. Dưới đây l% một s nghiên cứu đ)ng chú ý liên quan đếnOpenPose:

"Real-time pose estimation using OpenPose library in Python" - T)c giả: XavierGeerinck. Nghiên cứu n%y giới thiệu việc sử dụng thư viện OpenPose trongPython để ước lượng tư thế con người trong thời gian thực. Nghiên cứu n%y đề cậpđến c)ch c%i đặt v% sử dụng OpenPose, v% cung cấp một s ứng dụng thực tế nhưnhận diện tư thế yoga v% tư thế thể thao.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

about:blank 12/18"OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields"

- T)c giả: Zhe Cao, Tomas Simon, Shih-En Wei, Yaser Sheikh. Đây l% b%i b)o gcgiới thiệu công nghệ OpenPose. Nghiên cứu n%y mô tả chi tiết về kiến trúc v%thuật to)n của OpenPose, bao gồm sử dụng c)c mạng neural để ước lượng tư thếcon người v% mơ hình mi quan hệ giữa c)c phần của cơ thể.

"Multi-Person Pose Estimation with Enhanced Channel-wise and SpatialInformation" - T)c giả: Yu-Tong Cao, Yun-Fei Yang, Yen-Yu Lin, Yung-YuChuang. Nghiên cứu n%y tập trung v%o việc cải thiện độ chinh x)c của OpenPosetrong việc ước lượng tư thế con người. Bằng c)ch tăng cường thông tin kênh v%không gian, phương ph)p n%y đạt được kết quả tt hơn trong việc ph)t hiện v%theo d&i c)c phần cơ thể.

"Real-time Multiple People Tracking with Deeply Learned Candidate Selectionand Person Re-identification" - T)c giả: Zhe Cao, Tomas Simon, Shih-En Wei,Yaser Sheikh. Nghiên cứu n%y mở rộng OpenPose để thực hiện theo d&i nhiềungười trong thời gian thực. Phương ph)p n%y kết hợp việc lựa chọn ứng viên thôngqua học sâu v% t)i x)c định danh tinh của người để theo d&i nhiều người di chuyểntrên video.

C)c nghiên cứu trên đại diện cho một phần nhỏ trong s nhiều nghiên cứu được thực hiệnvới OpenPose. Công nghệ n%y đã tạo ra sự quan tâm v% ứng dụng rộng rãi trong c)c lĩnhvực như nhận dạng tư thế, phân tich chuyển động, phân tich h%nh vi, thể thao, y học,giảng dạy v% nhiều lĩnh vực kh)c.

<b>ƯU NHƯˆC ĐIỂM</b>

"Real-time pose estimation using OpenPose library in Python":

Ưu điểm: Nghiên cứu n%y cung cấp một hướng dẫn chi tiết về c)ch sử dụngOpenPose trong Python v% )p dụng nó v%o c)c ứng dụng thực tế như yoga v% thểthao.

Nhược điểm: Nghiên cứu n%y tập trung v%o việc ứng dụng OpenPose v% không đềcập đến c)c cải tiến hoặc điểm mạnh của thuật to)n OpenPose.

"OpenPose: Realtime Multi-Person 2D Pose Estimation using Part AffinityFields":

Ưu điểm: Nghiên cứu n%y l% b%i b)o gc giới thiệu công nghệ OpenPose, giảithich chi tiết về kiến trúc v% thuật to)n của nó.

Nhược điểm: Có thể thiếu một s chi tiết về c)ch OpenPose được c%i đặt v% sửdụng trong thực tế.

"Multi-Person Pose Estimation with Enhanced Channel-wise and SpatialInformation":

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Ưu điểm: Nghiên cứu n%y tập trung v%o việc cải thiện độ chinh x)c của OpenPosetrong việc ước lượng tư thế con người bằng c)ch tăng cường thông tin kênh v%khơng gian.

Nhược điểm: Nghiên cứu n%y có thể không đề cập đến một s khia cạnh kh)c củaOpenPose như tc độ v% khả năng đa người.

"Real-time Multiple People Tracking with Deeply Learned Candidate Selection andPerson Re-identification":

Ưu điểm: Nghiên cứu n%y mở rộng OpenPose để thực hiện theo d&i nhiều ngườitrong thời gian thực v% giải quyết vấn đề t)i x)c định danh tinh của người trongqu) trình theo d&i.

Nhược điểm: Nghiên cứu n%y có thể tập trung v%o một khia cạnh cụ thể củaOpenPose v% không đề cập đến c)c ứng dụng kh)c.

Cần lưu ý rằng mỗi nghiên cứu có những mục tiêu v% phạm vi kh)c nhau, v% việc đ)nhgi) ưu nhược điểm phụ thuộc v%o mục đich sử dụng v% yêu cầu cụ thể của từng ngườidùng.

<b>Các nô ‰i dung được thực hiê ‰n trong đề tài</b>

Tìm hiểu về OpenPose: Đầu tiên, chúng ta tìm hiểu về cơng nghệ OpenPose v% c)ch nó hoạt động. Điều n%y bao gồm việc nghiên cứu c)c b%i b)o, t%i liệu v% t%i nguyên kh)c về OpenPose để hiểu c)ch nó ước lượng tư thế con người dựa trên hình ảnh.

C%i đặt OpenPose: Tiếp theo, chúng ta thực hiện việc c%i đặt OpenPose trên m)y tinh của mình. Điều n%y bao gồm tải xung mã nguồn OpenPose từ kho lưu trữ GitHub chinh thứccủa OpenPose v% thực hiện c)c bước c%i đặt cần thiết, bao gồm c%i đặt c)c thư viện phụ thuộc v% cơng cụ ph)t triển.

Tạo chương trình Python sử dụng OpenPose: Chúng ta viết mã Python để sử dụng OpenPose để ước lượng tư thế con người trên một hình ảnh đầu v%o. Mã n%y sẽ sử dụng thư viện OpenCV để đọc hình ảnh v% gọi OpenPose để thực hiện ước lượng tư thế.Cấu hình tham s v% c%i đặt: Chúng ta cấu hình c)c tham s của OpenPose để điều chỉnh qu) trình ước lượng tư thế theo yêu cầu cụ thể. Điều n%y bao gồm thiết lập c)c tham s như mơ hình mạng neural sử dụng, đường dẫn đến c)c file mơ hình, ngưỡng nhận dạng v% c)c tham s kh)c.

Đ)nh gi) kết quả: Chúng ta đ)nh gi) kết quả của qu) trình ước lượng tư thế bằng c)ch hiển thị hình ảnh ban đầu v% vẽ c)c điểm v% đường ni tượng tư thế trên đó. Chúng ta cũng có thể tinh to)n c)c thng kê về tư thế như góc cơ thể, khoảng c)ch giữa c)c điểm v% c)c đặc trưng kh)c.

Ứng dụng: Cui cùng, chúng ta xem xét c)c ứng dụng của OpenPose trong c)c lĩnh vực như nhận dạng tư thế, phân tich chuyển động, phân tich h%nh vi, y học, giảng dạy v% thể

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

about:blank 14/18thao. Chúng ta nêu ra c)c vi dụ cụ thể về c)ch OpenPose có thể được )p dụng trong c)c

tình hung thực tế

C)c nội dung trên đại diện cho quy trình nghiên cứu v% thực hiện đề t%i n%y, từ việc tìm hiểu cơng nghệ OpenPose, c%i đặt v% sử dụng nó, đ)nh gi) kết quả v% )p dụng trong c)c lĩnh vực kh)c nhau.

<b>Phương pháp thực hiê ‰n</b>

3.Mô t d li u (Dataset)

Dữ liệu (dataset) trong đề t%i OpenPose đóng vai trị quan trọng trong việc huấn luyện v%đ)nh gi) hiệu suất của hệ thng. Dữ liệu n%y thường chứa c)c hình ảnh hoặc video chứacon người trong c)c tư thế kh)c nhau, được sử dụng để ước lượng v% phân tich tư thế conngười bằng OpenPose.

Một dataset thơng thường trong đề t%i OpenPose có thể bao gồm c)c th%nh phần sau:Hình ảnh hoặc video: Đây l% dữ liệu đầu v%o chứa con người trong c)c tư thế kh)cnhau. C)c hình ảnh có thể được thu thập từ nhiều nguồn, bao gồm c)c cơ sở dữliệu cơng khai, c)c bộ dữ liệu mẫu có sẵn hoặc có thể tạo ra bằng c)ch chụp hìnhhoặc quay video từ m)y ảnh hoặc camera.

Nhãn (labels): Mỗi hình ảnh hoặc video trong dataset cần được gắn nhãn với c)cthông tin tương ứng về tư thế con người. Nhãn có thể chứa c)c thông tin như vị tricủa c)c điểm mc cơ thể (như mắt, mũi, tay, chân), c)c đường ni giữa c)c điểmmc, c)c góc cơ thể, v.v. Nhãn n%y cung cấp một tập dữ liệu đ)ng tin cậy để sos)nh với kết quả ước lượng của OpenPose v% đ)nh gi) hiệu suất của nó.

Phân chia tập dữ liệu (train/val/test): Dataset thường được chia th%nh c)c tập dữliệu con, bao gồm tập huấn luyện (train), tập x)c thực (validation) v% tập kiểm tra(test). Tập huấn luyện được sử dụng để huấn luyện mơ hình OpenPose, tập x)cthực được sử dụng để điều chỉnh c)c siêu tham s v% tập kiểm tra được sử dụng đểđ)nh gi) hiệu suất của mơ hình đã được huấn luyện.

Định dạng dữ liệu: Dữ liệu trong dataset có thể được lưu trữ dưới nhiều định dạngkh)c nhau, chẳng hạn như hình ảnh (JPEG, PNG) hoặc video (AVI, MP4). Địnhdạng dữ liệu phụ thuộc v%o yêu cầu cụ thể của đề t%i v% công nghệ sử dụng.Một dataset tt v% đa dạng l% quan trọng để đảm bảo rằng mơ hình OpenPose được huấnluyện v% đ)nh gi) trên một loạt c)c tư thế con người thực tế. Việc sử dụng dataset đa dạnggiúp nâng cao độ chinh x)c v% khả năng tổng qu)t hóa của mơ hình.

</div>

×