Iva-ec: Giải pháp phân tích video thông minh dựa trên điện toán biên
Bạn đang xem tài liệu "Iva-ec: Giải pháp phân tích video thông minh dựa trên điện toán biên", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- iva_ec_giai_phap_phan_tich_video_thong_minh_dua_tren_dien_to.pdf
Nội dung text: Iva-ec: Giải pháp phân tích video thông minh dựa trên điện toán biên
- Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XIII về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR), Nha Trang, ngày 8-9/10/2020 DOI: 10.15625/vap.2020.00168 IVA-EC: GIẢI PHÁP PHÂN TÍCH VIDEO THÔNG MINH DỰA TRÊN ĐIỆN TOÁN BIÊN Đào Vũ Hiệp1, Mạc Đình Hiếu1, Tống Việt Hùng2, Vũ Văn Phán2, Hà Quốc Trung2 1 Viện Công nghệ thông tin và Truyền thông, Trường Đại học Bách khoa Hà Nội 2 Trung tâm Công nghệ thông tin, Bộ Khoa học và Công nghệ hiep.dvncs18032@sis.hust.edu.vn, hieumd@soict.hust.edu.vn, tvhung@most.gov.vn, vvphan@most.gov.vn, trunghq@soict.hust.edu.vn TÓM TẮT: Trong bài báo này, chúng tôi đề xuất IVA-EC, một giải pháp phân tích video thông minh dựa trên các thuật toán học sâu (Deep learning) theo mô hình điện toán biên (Edge Computing). IVA-EC cho phép triển khai các ứng dụng AI như thành phố thông minh, giám sát giao thông thông minh, nhà máy thông minh, trực tiếp trên hạ tầng hệ thống camera giám sát sẵn có. Trung tâm của giải pháp là các thiết bị Edge AI cho phép chuyển đổi các khung hình video thành dữ liệu dạng text (metadata) mô tả các đối tượng và thuộc tính, xuất hiện trong các khung hình theo thời gian thực. Dữ liệu metadata sau đó được gửi về máy chủ phân tích được triển khai trên hạ tầng điện toán đám mây để phân tích nội dung. Mục tiêu của IVA-EC là cung cấp thông tin có giá trị và kết xuất các sự kiện, cảnh báo theo các chính sách được định nghĩa trước một cách tự động theo thời gian thực, trong khi vẫn đảm bảo tính riêng tư của người dùng. Các thông tin, sự kiện này được hiển thị trên phần mềm quản lý video một cách trực quan.Giải pháp được triển khai thử nghiệm cho ứng dụng giám sát khu vực hạn chế. Kết quả thử nghiệm cho thấy một thiết bị Edge AI có thể xử lý đồng thời lên đến 30 dòng video và thời gian kết xuất sự kiện < 1s. Từ khóa: Điện toán biên, phân tích video thông minh, học sâu, điện toán đám mây. I. GIỚI THIỆU Hệ thống IP camera ngày càng đóng vai trò quan trọng và được ứng dụng rộng rãi trong đời sống. Theo báo cáo của Statista, riêng trong năm 2018 đã có hơn 25 triệu IP camera được bán ra trên thị trường [1]. Ước tính con số này tiếp tục tăng nhanh trong những năm tới. Tuy nhiên rất nhiều các hệ thống camera chỉ đóng vai trò duy nhất là ghi lại các sự kiện xảy ra tại khu vực được giám sát. Dữ liệu của camera chỉ được xem và phân tích khi có một sự kiện bất thường xảy ra và người dùng cần phải xem lại hoặc truy vết các hành động đó. Việc giám sát trực tuyến hay phân tích các video để trích rút các thông tin có ý nghĩa đều được tiến hành bởi con người. Thông thường, để phân tích một video dài 1 giờ, một người cần tiêu tốn từ 2 đến 2,5 giờ cho quá trình xem và tổng hợp các thông tin cần thiết [2]. Vì vậy, các hệ thống giám sát lớn bao gồm hàng trăm camera đến hàng nghìn camera như thành phố thông minh, quản lý giao thông thông minh, việc phân tích, kết xuất thông tin hữu ích từ các dòng video thu được của camera theo thời gian thực gần như không khả thi nếu chỉ dựa trên con người. Từ đó đặt ra nhu cầu cấp thiết về các hệ thống phân tích video tự động sử dụng AI để chuyển dữ liệu khung hình video sang dữ liệu text và tổng hợp lại thành các thông tin hữu ích. Trong những năm gần đây, học sâu (Deep Learning - DL) là một cách tiếp cận hiệu quả để giải quyết nhiều bài toán phức tạp khác nhau như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên, an ninh thông tin [8]. Trong lĩnh vực thị giác máy tính (Computer Vision), các mạng nơron trong học sâu như CNN (Convolutional Neural Network), DNN (Deep Neural Network) cho thấy sức mạnh vượt trội trong các bài toán phát hiện đối tượng, phân loại ảnh, nhận dạng so với các phương pháp học máy truyền thống [10]. Nhờ khả năng “học” với một lượng dữ liệu khổng lồ cũng như khả năng trích rút các đặc trưng một cách tự động, quá trình “suy luận” (inference) như phát hiện đối tượng, phân loại đối tượng, nhận dạng đối tượng trong ảnh hoặc khung hình video của DL có độ chính xác rất cao, tốc độ xử lý nhanh theo thời gian thực [9]. Có thể nói, DL là cách tiếp cận tốt nhất cho việc chuyển đổi dữ liệu ảnh đặc biệt là dữ liệu khung hình video thành các hành động (actionable insight) được mô tả dưới dạng chuỗi các đối tượng, thuộc tính và vị trí của chúng trong các khung hình video xung quanh thời điểm mà hành động diễn ra. Các tập đoàn công nghệ hàng đầu trên thế giới như IBM, Google, Nvidia đều đã xây dựng các hệ thống và giải pháp cho việc phân tích video dựa trên các thuật toán DL tiên tiến nhất hiện nay. Xu hướng phát triển chung của các giải pháp này là tích hợp các tính năng thông minh cho hệ thống camera giám sát dựa trên hạ tầng điện toán đám mây (Cloud Computing) [18]. Các dòng video thu được từ các camera sẽ được truyền về hệ thống máy chủ tập trung trên nền điện toán đám mây, nhờ sức mạnh tính toán khổng lồ, các thuật toán DL dễ dàng được triển khai để phân tích, trích xuất những thông tin có ý nghĩa từ dòng video nhận được. Tuy nhiên, với sự bùng nổ của số lượng camera giám sát, ba vấn đề gặp phải khi triển khai một hệ thống như vậy là: (1) Băng thông tăng cao khi phải truyền trực tiếp nhiều dòng video trên hạ tầng mạng: một camera cần một băng thông ít nhất 3 Mb/s cho việc truyền tải dòng video lên hệ thống đám mây, với một hệ thống gồm 100 camera (hệ thống camera của một tòa nhà) sẽ yêu cầu một đường truyền có băng thông ít nhất 300 Mb/s, dẫn tới chi phí cho việc truyền tải dữ liệu là quá lớn và nhiều khi không khả thi trong thực tế; (2) Quá trình phân tích có độ trễ lớn không đáp ứng yêu cầu xử lý theo thời gian thực: độ trễ gây ra bởi trễ trong quá trình truyền tin, quá trình lập lịch xử lý, quá trình suy luận của DL; (3) Vấn đề về tính riêng tư: nhiều dòng video có thể chứa thông tin nhạy cảm nên không thể truyền trực tiếp về hạ tầng đám mây của bên thứ 3 để xử lý. Các vấn đề trên không chỉ là vấn đề riêng của hệ thống camera thông minh mà còn là vấn đề chung của các ứng dụng IoT hiện nay. Sự bùng nổ của các thiết bị IoT và các ứng dụng của nó khiến cho mô hình xử lý tập trung dựa trên nền điện toán đám mây thể hiện nhiều bất cập mà khó giải quyết một cách triệt để. Một số hệ thống IoT đòi hỏi độ trễ xử lý thấp (vài miliseconds), điều này rất khó đảm bảo với mô hình điện toán đám mây do phụ thuộc vào tốc độ đường truyền Internet. Sự bùng nổ của IoT quá nhanh dẫn tới sinh ra lượng
- Đào Vũ Hiệp, Mạc Đình Hiếu, Tống Việt Hùng, Vũ Văn Phán, Hà Quốc Trung 189 dữ liệu khổng lồ vượt quá tốc độ phát triển của hạ tầng mạng truyền dẫn. Theo ước tính của Cisco [3] đến năm 2021 tất cả con người, máy móc và thiết bị IoT sẽ tạo ra gần 850 ZB dữ liệu, trong khi các trung tâm dữ liệu (Datacenter) trên toàn cầu chỉ có thể tiếp nhận dc 20,6 ZB. Hơn nữa, việc truyền tất cả dữ liệu này về một hệ thống xử lý trung tâm của bên thứ ba không phải lúc nào cũng được chấp nhận do các lo ngại về tính bảo mật và riêng tư của dữ liệu. Vì vậy xu hướng “giảm tải” (offload) cho các hệ thống điện toán đám mây bằng các hệ thống điện toán biên (Edge Computing - EC) là một xu hướng tất yếu và nhận được sự quan tâm rộng rãi của giới nghiên cứu [4]. Hiện nay, đã có rất nhiều các công trình nghiên cứu đã chỉ ra tiềm năng của mô hình điện toán biên cho các ứng dụng IoT [4]. Donno và các cộng sự [6] đã tóm lược lại sự hình thành và phát triển của các mô hình điện toán phổ biến hiện nay từ điện toán đám mây, IoT cho đến điện toán biên và điện toán sương mù (Fog Computing). Tác giả chỉ rõ các thách thức mà các mô hình điện toán đám mây gặp phải với sự bùng nổ của thiết bị IoT và xu hướng chuyển dịch sang mô hình điện toán biên và cuối cùng là hướng tới điện toán sương mù trong tương lai. Mặt khác, Mohammadi [13] cũng chỉ ra DL là một công cụ phù hợp cho việc xử lý dữ liệu lớn, đặc biệt là sự bùng nổ của IoT như hiện nay. Qi và cộng sự [14] đã tiến hành các thực nghiệm để đánh giá viêc triển khai mạng CNN trên các thiết bị nhúng có tích hợp phần cứng chuyên dụng như Nvidia Tegra X2, chứng tỏ tính khả thi của việc triển khai DL trên thiết bị nhúng. Theo một cách tiếp cận khác, [9] đề xuất một thuật toán lập lịch cho điện toán biên để tránh tình trạng nghẽn mạng khi triển khai đồng thời nhiều chương trình DL khác nhau. Trong khi đó, các nghiên cứu [11][12] đã tận dụng tính phân tán của điện toán biên để phân tải các mạng DL trên nhiều thiết bị khác nhau giúp các mạng DL có thể chạy trực tiếp trên các thiết bị có năng lực tính toán hạn chế. Nhìn chung các công trình nghiên cứu trên, các tác giả đã thảo luận về tiềm năng của việc triển khai DL trên điện toán biên cho việc xử lý dữ liệu được tạo ra bởi thiết bị IoT, đặc biệt với dữ liệu dòng video có kích thước đến vài MB/s như hệ thống camera. Bài toán phân tích video thông minh cũng nhận được sự quan tâm của nhiều nhà nghiên cứu. Chen và cộng sự [16] xây dựng một hệ thống phân tích video thông minh phân tán dựa trên điện toán biên, trong đó các tác giả tập trung xây dựng một hệ thống cho phép các mô hình DL được huấn luyện dựa trên sự kết hợp của nhiều node trong điện toán biên theo kiến trúc đa tầng (multi-layer) với dữ liệu huấn luyện được lấy trực tiếp từ các hệ thống camera. Tan và cộng sự [15] đề xuất một nền tảng gọi là FastVA để cho phép sử dụng DL cho việc phân tích video với phần cứng xử lý là NPU (Neural Processing Unit) trên các thiết bị di động. Ý tưởng của các tác giả là tận dụng NPU của các điện thoại thông minh để chạy các thuật toán DL phân tích trực tiếp các khung hình video thu được từ camera của điện thoại trước khi gửi về máy chủ. Trong nghiên cứu [18], các tác giả đã đề xuất một hệ thống tổng thể cho phép phân tích dòng video ở trên một quy mô lớn. Tuy nhiên các thuật toán DL vẫn được triển khai trên các hệ thống điện toán đám mây trong khi hệ thống tính toán tại biên chỉ làm nhiệm vụ tiền xử lý dữ liệu như giải mã dòng video, phát hiện chuyển động. Trong bài báo này, chúng tôi đề xuất một giải pháp phân tích video thông minh dựa trên sự kết hợp sức mạnh của điện toán biên và điện toán đám mây được gọi là IVA-EC. Mục tiêu của giải pháp cho phép phân tích video một cách tự động theo thời gian thực nhưng vẫn đảm bảo tính riêng tư của dữ liệu và tận dụng tối đa hạ tầng của các hệ thống camera giám sát sẵn có, đặc biệt với các hệ thống camera phân tán trên nhiều vị trí địa lý khác nhau, không thể xử lý trên một máy chủ tập trung. Trong mô hình này, các dòng video được xử lý bởi thiết bị Edge AI, bản chất là các thiết bị nhúng được tích hợp phần cứng chuyên dụng chạy các thuật toán học sâu, đặt tại phía người dùng. Các thuật toán DL trên Edge AI sẽ chuyển đổi dữ liệu khung hình video thành danh sách các đối tượng, thuộc tính và vị trí của chúng trong khung hình vào biểu diễn dưới dạng metadata theo thời gian thực. Dữ liệu metadata là dữ liệu text có cấu trúc và có kích thước nhỏ hơn nhiều lần so với khung hình video. Hơn nữa, dữ liệu text sẽ khó khai thác được thông tin nếu không hiểu rõ ngữ cảnh thực tế của bài toán và việc che giấu và làm mờ dữ liệu text cùng đơn giản hơn nhiều so với dữ liệu dòng video. Dữ liệu metadata liên tục được Edge AI gửi về hệ thống máy chủ triển khai trên hạ tầng đám mây để phân tích nội dung, kết xuất thành các thông tin có ý nghĩa dưới dạng sự kiện, cảnh báo, biểu đồ thống kê gửi về hệ thống quản lý video trung tâm (Video Management System -VMS) để hiển thị lên giao diện cho người dùng. Bài báo của chúng tôi gồm 4 nội dung chính. Sau phần giới thiệu, phần 2 chúng tôi đề cập đến việc triển khai các thuật toán học sâu cho điện toán biên. Phần 3 chúng tôi trình bày cụ thể về giải pháp phân tích video thông minh được đề xuất. Phần 4 chúng tôi sẽ trình bày các thử nghiệm và đánh giá thực tế để chỉ ra được tính khả thi và hiệu quả của giải pháp. Cuối cùng phần 5 là kết luận và hướng phát triển trong tương lai. II. TRIỂN KHAI DEEP LEANING CHO EDGE COMPUTING Điện toán biên là mô hình tính toán có vai trò ngày càng quan trọng, khi việc tính toán dữ liệu được đưa đến các hệ thống điện toán tại biên (edge) của mạng hay dữ liệu của người dùng được tính toán ngay trong mạng cục bộ, gần với nguồn phát, thay vì truyền hết về hệ thống điện toán đám mây để xử lý [5]. Tuy nhiên, để các thiết bị tính toán tại biên có thể đóng vai trò như đúng mô hình đặt ra, việc triển khai được các thuật toán DL là một yếu tố có tính quyết định. Một mạng DL được sử dụng rất nhiều trong xử lý ảnh là mạng CNN. Về bản chất, CNN là một mạng nơron nhiều lớp (layer) hoạt động theo luồng xử lý như sau: (1) lớp tích chập (convolution layer) sẽ quét ảnh đầu vào và trích rút ra các véctơ đặc trưng một cách tự động; (2) một hàm kích hoạt (activation function) sẽ xác định các đặc trưng nào trong các véctơ sẽ được kích hoạt cho quá trình suy luận (3) một lớp tổng hợp (pooling-layer) sẽ giảm kích thước của véctơ đặc trưng, và một lớp được kết nối hoàn chỉnh (fully-connected layer) sẽ kết nối các nhãn khả năng tới tất cả các đầu ra của lớp tổng hợp. Dữ liệu ảnh đầu vào khi đi qua các lớp của mạng CNN sẽ nhanh chóng được giảm kích thước, tự động lọc ra các đặc trưng cần thiết và đầu ra của mạng sẽ là các thông tin về các đối tượng, vị trí và thuộc tính của
- 190 IVA-EC: GIẢI PHÁP PHÂN TÍCH VIDEO THÔNG MINH DỰA TRÊN ĐIỆN TOÁN BIÊN chúng xuất hiện trong ảnh đầu vào. Vì vậy các mạng nơron của DL rất phù hợp cho điện toán biên trong việc giảm kích thước dữ liệu cần xử lý trước khi gửi về máy chủ trên điện toán đám mây. Đối với các hệ thống camera giám sát, dữ liệu thu thập được từ môi trường là các dòng video có kích thước lớn và dữ liệu sau khi đi qua thiết bị tính toán của điện toán biên sẽ là dữ liệu text có kích thước nhỏ hơn rất nhiều dữ liệu đầu vào. Một ưu điểm quan trọng khác của DL trên điện toán biên là bảo vệ được tính riêng tư của dữ liệu người dùng, đặc biệt là với dữ liệu dạng ảnh hoặc dòng video. Dữ liệu ảnh đầu vào sau khi đi qua các mạng CNN thì rất khó có thể khai thác được các thông tin khác ngoài các thông tin mà mạng được huấn luyện để suy luận. Ngay cả trường hợp có các đặc trưng do mạng CNN trích rút ra, việc hiểu được các đặc trưng cũng không khả thi vì các đặc trưng được trích xuất tự động, có mức trừu tượng cao, không thể diễn đạt hay hiểu theo ngôn ngữ thông thường của con người. Những lợi ích của việc có thể triển khai DL trên điện toán biên mang lại là rất lớn, tuy nhiên trong thực tế việc chạy được các thuật toán DL trên các thiết bị tại biên sẽ gặp phải rất nhiều thách thức. Phần lớn các thiết bị tại biên là những thiết bị nhúng hạn chế về năng lượng và tài nguyên tính toán [19]. Các thuật toán “state-of-the-art” của DL được xây dựng dựa trên các thư viện và nền tảng lập trình AI phổ biến như Tensorflow, Theano, Pytorch, Caffe, v.v. Các nền tảng này được phát triển cho các phần cứng mạnh trên PC hoặc các máy chủ. Việc triển khai trực tiếp các nền tảng này trên các thiết bị nhúng gặp rất nhiều khó khăn. Hiện nay các nhà nghiên cứu thường tiếp cận theo 2 hướng là nén các mô hình DL và phát triển các phần cứng chuyên dụng tiêu thụ ít điện năng để tăng tốc độ xử lý cho các thuật toán DL [20]. Việc nén mô hình mạng trong DL giúp giảm kích thước của mô hình từ đó giảm bộ nhớ, giảm yêu cầu về tài nguyên tính toán. Trong khi, các thiết bị nhúng được tích hợp các phần cứng chuyên dụng cho DL thay vì sử dụng CPU hoặc GPU để tính toán sẽ giúp tăng tốc độ suy luận cho các thuật toán DL mà không tiêu thụ quá nhiều điện năng. A. Nén các mô hình trong học sâu (Model Compression) Nén các mô hình trong học sâu là một kỹ thuật để cho phép triển khai DL trên thiết bị biên. Yêu cầu của quá trình nén mô hình DL là giữ cho độ chính xác mô hình tương đương hoặc giảm ở mức chấp nhận được so với mô hình gốc. Một số kỹ thuật phổ biến thường được sử dụng là “cắt tỉa” mô hình (Pruning) và lượng tử hóa (Quantization) tham số của mô hình. Quantization liên quan đến quá trình xấp xỉ một tập đại lượng có giá trị tương đối lớn hoặc thay đổi liên tục bằng một lượng có giá trị nhỏ hơn. Hiểu một cách đơn giản, lượng tự hóa là chuyển đổi trọng số trong mô hình từ biểu diễn bằng số thực nhiều bit thành các số thực ít bit hay làm tròn chúng. Ví dụ một số thực được biểu diễn dưới dạng số thực 32-bit (FP32) có thể được làm tròn về dạng số thực 16-bit (FP16) hoặc số nguyên 8-bit (INT8). Việc làm tròn các trọng số sẽ làm giảm độ chính xác của mô hình nhưng đồng thời sẽ làm giảm yêu cầu về tài nguyên tính toán. Mô hình với FP16 hoặc INT8 có thể đạt được tốc độ xử lý nhanh gấp 2 đến 4 lần so với mô hình ban đầu FP32. Một thực tế đã được chỉ ra rằng, không phải tất cả các trọng số mà mô hình mạng DL học được trong quá trình huấn luyện đều có ý nghĩa cho quá trình suy luận, phán đoán của model. DL được thiết kế cho việc tự động trích xuất các đặc trưng và đánh trọng số cho các đặc trưng đó. Do vậy, mô hình sau khi huấn luyện có thể tồn tại các liên kết có các trọng số cực kỳ thấp (xấp xỉ 0). Một số nghiên cứu đã chỉ ra rằng chỉ một số lượng nhỏ các kết nối có vai trò thực sự quan trọng vì vậy việc áp dụng kỹ thuật pruning (cắt tỉa) cho mạng sẽ giúp loại bỏ các kết nối dừ thừa trong mô hình từ đó giảm quá trình tính toán, tăng tốc độ xử lý [20]. Các bước cắt tỉa một mô hình được mô tả như sau: Huấn luyện mạng và tìm tất cả các kết nối (connections) có trọng số lớn. Loại bỏ các kết nối không quan trọng nếu trọng số của nó nhỏ hơn một giá trị ngưỡng cho trước bằng cách thiết lập các trọng số này về 0. Sau quá trình cắt tỉa, các mô hình sẽ bị thay đổi ít nhiều và có thể là giảm độ chính xác so với mô hình ban đầu. Vì vậy cần thực hiện quá trình hiệu chỉnh các trọng số của mô hình đã cắt tỉa để tăng độ chính xác. B. Tăng tốc phần cứng (Hardware Acceleration) Để tăng tốc độ suy luận cho DL, các nhà sản xuất phần cứng đã phát triển các mạch phần cứng chuyên dụng cho DL như TPU của Google, NVDLA của NVIDIA, NPU của Intel bên cạnh các phần cứng xử lý sẵn có của các máy tính là CPU và GPU. TPU là một mạch ASIC (Application Specific Intergrated Circuit) được phát triển bởi Google để tăng tốc độ xử lý cho các tác vụ học sâu được thiết kế riêng cho TensorFlow - một thư viện học máy mã nguồn mở của Google [23]. Không giống như CPU có thể thực hiện rất nhiều các tác vụ khác nhau, các mạch ASIC thường thực hiện duy nhất một công việc. Vì vậy TPU cho ra hiệu năng cao hơn trên mỗi watt điện dùng để vận hành hệ thống. NVDLA (NVIDIA® Deep Learning Accelerator) là một bộ tăng tốc phần cứng với các hàm chức năng có thể cấu hình được thiết kế cho hoạt động suy luận trong các ứng dụng học sâu [25]. Nó cung cấp khả năng tăng tốc phần cứng đầy đủ cho mạng nơron tích chập (CNN) bằng cách xây dựng các block riêng lẻ giúp tăng tốc các hoạt động tính toán liên quan đến từng lớp trong mạng CNN (ví dụ: block cho lớp tích chập, block cho lớp kết nối đầy đủ, block cho lớp kích hoạt, v.v.). Với kiến trúc môđun, NVDLA có khả năng mở rộng, cấu hình linh hoạt và được thiết kế để đơn giản hóa việc tích hợp triển khai trên mạch FPGA. Mặt khác, so với việc sử dụng GPU cho các tác vụ học sâu, các mạch tăng tốc phần cứng TPU và NVDLA có bộ nhớ, băng thông I/O và tài nguyên tính toán tương đối hạn chế. Tuy nhiên, chúng có thể đạt được hiệu suất ở mức độ vừa phải với công suất tiêu thụ thấp hơn nên phù hợp cho các thiết bị nhúng và thiết bị IoT có năng lượng hạn chế [24].
- Đào Vũ Hiệp, Mạc Đình Hiếu, Tống Việt Hùng, Vũ Văn Phán, Hà Quốc Trung 191 III. GIẢI PHÁP ĐỀ XUẤT A. Kiến trúc hệ thống phân tích video thông minh Các hệ thống camera giám sát hiện nay đều tiến hành ghi lại tất cả các dòng video để lưu trữ. Tuy nhiên, video chỉ là dữ liệu thô đối với người dùng. Người dùng chỉ quan tâm đến các sự kiện xảy ra và các thông tin chứa trong đó. Tùy theo mục đích sử dụng khác nhau mà các thông tin có giá trị với người sử dụng sẽ khác nhau. Mục đích chính của hệ thống camera giám sát là ghi lại được hành động diễn ra tại vị trí mà camera bao quát, từ đó có dữ liệu để người dùng có thể xem lại, phân tích chi tiết hơn khi có một sự kiện bất thường xảy ra. Ví dụ, trong ứng dụng giám sát khu vực hạn chế, dữ liệu mà người dùng quan tâm là các sự kiện người đi vào hoặc ra khu vực. Mục tiêu của hệ thống phân tích video thông minh là có thể tự động phát hiện ra được các sự kiện được coi là bất thường theo các chính sách đặt ra để có thể cảnh báo ngay lập tức cho người dùng (xảy ra cháy nổ, người đi vào khu vực cấm, v.v.) hay thống kê các thông tin được coi là hữu ích với người dùng (nhận biết khách hàng quen thuộc, số lượng khách đến cửa hàng, v.v.). Vì vậy, hệ thống phân tích video thông minh được phát triển theo mô hình hướng sự kiện (event-base). Kiến trúc của hệ thống được mô tả trong Hình 1 với với 5 thành phần chính, trong đó có Camera, NVR (Network Video Recoder) và phần mềm phần mềm quản lý video đa năng (Video Management System - VMS) là 3 thành phần sẵn có của mọi hệ thống camera giám sát. Thiết bị Edge AI và máy chủ phân tích video triển khai trên nền điện toán đám mây là 2 thành phần được thêm vào cho chức năng phân tích video thông minh. Về cơ bản, hệ thống phân tích video thông minh trong giải pháp đề xuất có thể tận dụng tối đa hiện trạng hạ tầng camera giám sát sẵn có, từ đó tiết kiệm chi phí và thời gian triển khai cho các cơ quan tổ chức. Video Stream Cloud – Analytic Server Events & Metadata Khu vực 1 Python/Java/C++ Ứng dụng AI CSDL Edge AI Camera 01 Metadata Message Broker NodeJS/PHP API Logstash ElasticSearch Camera N Internet Khu vực M Trung tâm giám sát NVR Video Management System Edge AI Camera 01 01 02 03 04 05 06 Event 07 08 09 Camera N Hình 1. Kiến trúc tổng thể của hệ thống Vai trò và chức năng của các thành phần trong hệ thống được mô tả chi tiết như sau: Camera: đóng vai trò là “mắt điện tử” ghi lại các hình ảnh của một khu vực và truyền tải các hình ảnh này về một trung tâm giám sát thông qua giao thức truyền tải thời gian thực (Real-time Transfer Protocol - RTP) và quá trình thiết lập, điểu khiển các phiên truyền thông giữa các trạm cuối sẽ do giao thức truyền tin thời gian thực RTSP (Real Time Streaming Protocol) phụ trách. Edge AI: là một máy tính nhúng được tích hợp các phần cứng chuyên dụng cho các thuật toán DL. Edge AI có kích thước nhỏ gọn, được kết nối với camera trong cùng một mạng LAN và có thể được triển khai ngay tại tủ mạng kết nối các camera trong khu vực. Edge AI nhận trực tiếp dòng video từ camera và sử dụng các thuật toán DL để phát hiện các đối tượng xuất hiện trong khung hình (phát hiện người, phương tiện giao thông, động vật, v.v.) cũng như vị trí của các đối tượng (tọa độ và kích thước bounding box của đối tượng) và một số thuộc tính mà người dùng quan tâm (giới tính, màu sắc, hình dáng, biểu cảm, v.v.). Tất cả các thông tin này được đóng gói trong một bản tin có cấu trúc và gửi lên máy chủ phân tích triển khai trên hệ thống điện toán đám mây thông qua giao thức pub/sub messaging. NVR: là hệ thống các đầu ghi có nhiệm vụ nhận dòng RTP từ camera và lưu trữ dữ liệu nhận được dưới dạng các tệp tin video. Bên cạnh chức năng ghi liên tục hay ghi theo lịch như hệ thống NVR truyền thống, NVR sẽ có thêm chức năng “smart record” là ghi thông minh theo các sự kiện mà hệ thống tự động phân tích được. Tính năng ghi theo sự kiện sẽ giảm khối lượng video phải lưu trữ xuống một cách tối đa, từ đó tăng thời gian lưu trữ video cho cùng một kích thước ổ cứng. Vấn đề đặt ra là quá trình NVR nhận lệnh sẽ luôn có độ trễ. Vì vậy nếu khi NVR tiến hành nhận lệnh mới bắt đầu ghi sẽ làm mất mát dữ liệu. Để giải quyết vấn đề trên, cần có một cơ chế cache (lưu tạm) để lưu lại các khung hình video trong một khoảng thời gian ngắn được định nghĩa trước, từ đó cho phép video được ghi lại có thể chứa một khoảng thời gian trước khi nhận được lệnh.
- 192 IVA-EC: GIẢI PHÁP PHÂN TÍCH VIDEO THÔNG MINH DỰA TRÊN ĐIỆN TOÁN BIÊN Máy chủ phân tích: các máy chủ có nhiệm vụ phân tích video triển khai trên hệ thống điện toán đám mây dựa trên dữ liệu metadata nhận được từ Edge AI thông qua hệ thống stream dữ liệu phân tán. Các máy chủ ứng dụng sẽ tổng hợp dữ liệu metadata nhận được theo chuỗi khung hình liên tiếp và xử lý bằng các thuật toán đặc thù cho từng ứng dụng để kết xuất ra các sự kiện hay thông tin có giá trị. Sự kiện này được cập nhật vào CSDL của các ứng dụng cũng như gửi đến NVR để kích hoạt chế độ ghi thông minh. Một máy chủ dịch vụ cung cấp các API cho phép VMS và các phân hệ khác tương tác với CSDL lấy các thông tin và sự kiện để hiển thị cho người dùng. VMS: là phần mềm quản lý video đa năng, có nhiệm vụ tiếp nhận dòng RTP từ các camera và giải mã hiển thị hình ảnh lên màn hình giám sát. Trong giải pháp đề xuất, bên cạnh các tính năng của các VMS truyền thống, phần mềm sẽ được tích hợp thêm các plugin cho các ứng dụng phân tích video thông minh cũng như giao diện hiển thị các sự kiện, cảnh báo theo thời gian thực, giao diện hiển thị các thông tin phân tích được dưới dạng hình ảnh, bảng biểu trực quan. Hơn nữa, người dùng có thể xem lại các video ngắn tại thời điểm các sự kiện xảy ra được ghi lại bằng chức năng “smart record” của NVR. Mặt khác, việc quản lý, cấu hình và điều khiển các thiết bị Edge AI cũng được tích hợp vào phần mền VMS thông qua một giao diện tương tác trực quan. B. Thiết bị Edge AI Edge AI là trung tâm của giải pháp với nhiệm vụ là nhận dòng dữ liệu video, giải mã lấy các khung hình để tiến hành suy luận, phán đoán bằng mô hình DL đã được huấn luyện với dữ liệu mẫu. Hình 2 mô tả chi tiết luồng xử lý trên thiết bị Edge AI. Môđun “suy luận” sẽ dựa trên các thuật toán DL cho các tác vụ phổ biến trong xử lý ảnh như phát hiện đối tượng (object detection), phân loại ảnh (classification), theo vết đối tượng (object tracking), phân vùng ảnh (object segmentation). Các mô hình sẽ được huấn luyện với các bộ dữ liệu mẫu tùy theo yêu cầu của bài toán bằng kỹ thuật học chuyển tiếp (Transfer learning). Transfer learning là quá trình truyền các đặc trưng học được từ một ứng dụng sang một ứng dụng khác bằng cách huấn luyện mô hình với bộ dữ liệu công khai trước, sau đó sử dụng mô hình thu được để huấn luyện tiếp với dữ liệu của từng bài toán đặc thù. Kỹ thuật này đạt được hiệu quả tốt do rất nhiều lớp ban đầu trong mạng nơron chủ yếu được sử dụng để xác định các đường viền, đường cong và các đặc điểm khác trong hình ảnh [21]. Các đặc trưng này có thể dễ dàng được kế thừa trong các bài toán khác. Mặt khác, việc huấn luyện mô hình trên một tập dữ liệu nhỏ làm quá trình huấn luyện sẽ diễn ra nhanh hơn và giảm thiểu chi phí thu thập và gán nhãn dữ liệu. Kết hợp với kỹ thuật cắt tỉa mô hình như đã trình bày ở nội dung II, người dùng có thể giảm đáng kể kích thước tổng thể của mô hình, dẫn đến dung lượng bộ nhớ thấp hơn nhiều và thông lượng suy luận cao hơn, điều này rất quan trọng cho việc triển khai trên các thiết bị tại biên. Training model on Cloud server Training Pruning ReTrain Pretrained Model Custom Dataset Model Model Trained Model Edge AI Decode Pre process Inference Analyze Data Message Producer Hình 2. Luồng xử lý trên thiết bị Edge AI Quá trình suy luận bởi các mô hình DL sẽ tách ra được các đối tượng xuất hiện trong một khung hình cũng như vị trí và các thuộc tính của chúng. Ví dụ đầu ra của các thuật toán Tiny-YOLOv3 là danh sách các bounding box (bbox), và phân loại của các đối tượng xuất hiện trong ảnh [22]. Thông qua Edge AI dữ liệu 1 khung hình video đã được rút gọn lại thành danh sách các đối tượng xuất hiện trong khung hình đó. Kích thước dữ liệu đã được giảm đi đáng kể do loại bỏ đi dữ liệu nền “background”. Các dữ liệu này được gọi là metadata và được đóng gói lại thành các bản tin để gửi về máy chủ phân tích thông qua giao thức pub/sub messaging. Một bản tin sẽ bao gồm các thông tin như dưới đây và theo cấu trúc của XML hoặc JSON. Định danh camera. Frame ID: số thứ tự của khung hình. Timestamp: thời gian ghi nhận được hình ảnh. Danh sách đối tượng: bbox và nhãn của đối tượng (người, ô tô, khuôn mặt, biển số xe, ).
- Đào Vũ Hiệp, Mạc Đình Hiếu, Tống Việt Hùng, Vũ Văn Phán, Hà Quốc Trung 193 Thuộc tính của đối tượng: giới tính, màu sắc, hình dạng, Đặc trưng của đối tượng: là véctơ đặc trưng trích rút bằng mạng CNN. Các thông tin khác được định nghĩa sẵn: thông tin vị trí camera trong thực tế, thông tin bổ sung khác. C. Mô hình truyền dữ liệu giữa Edge AI và máy chủ phân tích trên hệ thống điện toán đám mây Quá trình truyền dữ liệu từ Edge AI lên hệ thống đám mây được dựa trên hệ thống message pub/sub phân tán như mô hình được mô tả trong Hình 3 dưới đây. Ưu điểm của mô hình này là cung cấp một nền tảng truyền tin có độ trễ thấp và thông lượng cao cho việc xử lý rất nhiều nguồn cấp dữ liệu khác nhau theo thời gian thực. Edge AI sẽ đóng vai trò là một procuder và các ứng dụng trên máy chủ phân tích là cosumer. Consumer sẽ đăng ký (subscribe) để nhận dữ liệu từ các topic được tạo riêng cho từng Edge AI. Dữ liệu của một topic được phân chia ra thành nhiều phân vùng (partition). Mỗi phân vùng sẽ lưu dữ liệu của một camera, giúp bảo toàn dữ liệu cũng như xử lý dữ liệu dễ dàng hơn. Các phân vùng cho phép chúng ta thực hiện đọc dữ liệu theo nhiều luồng song song tới một topic cụ thể bằng cách phân chia dữ liệu của một topic trên nhiều broker khác nhau, mỗi phân vùng có thể được đặt trên một máy riêng biệt – cho phép nhiều consumer đọc dữ liệu đồng thời từ một topic. IoT Edge Computing Cloud Computing Message Broker Application 01 Location N Edge AI N Location 02 Topic N Consumer Analytics Edge AI 02 CSDL Location 01 Topic 02 Group 01 Module Edge AI 01 Topic 01 Inference by Deep Learning Partition 01 Application 02 Cam 01 Metadata Consumer Analytics API Partition 02 Group 02 Module . Message Cam 02 . . Procuder . . . Application K Partition M Consumer Analytics Group K Module Cam M Hình 3. Mô hình truyền dữ liệu giữa Edge AI và máy chủ phân tích trên hệ thống điện toán đám mây IV. THỬ NGHIỆM VÀ ĐÁNH GIÁ A. Kịch bản và môi trường thử nghiệm Để chứng minh tính khả thi của giải pháp trong thực tế, chúng tôi xây dựng một hệ thống phân tích video thông minh cho ứng dụng giám sát khu vực hạn chế (Restricted Zone Monitoring) theo đúng mô hình đề xuất. Trong đó, hệ thống có nhiệm vụ tự động phát hiện người đi vào và đi ra một khu vực hạn chế được bao quát bởi một camera giám sát và hiển thị cảnh báo cho quản trị viên theo thời gian thực trên phần mềm VMS. Vùng hạn chế được xác định là toàn bộ khu vực quan sát được bởi camera. Khi có sự thay đổi về số lượng người xuất hiện trong khung hình hệ thống sẽ xác định là có sự kiện xảy ra. Nếu số người tăng, sự kiện là có người đi vào khu vực, ngược lại là có người đi ra khỏi khu vực. Sự kiện được kết xuất dựa trên một chuỗi các khung hình liên tiếp để đảm bảo độ chính xác. Chúng tôi sử dụng 2 mạch nhúng là Jetson Nano và Jetson AGX Xavier làm thiết bị Edge AI. Chi tiết cấu hình của 2 thiết bị được mô tả trong Bảng 1 dưới đây. Bảng 1. Cấu hình phần cứng chi tiết các thiết bị Edge AI thử nghiệm Jetson Nano [26] Jetson AGX Xavier [26] CPU Quad-Core ARM Cortex – A57 MPCore 8-core NVIDIA Carmel Armv8.2 64-bit CPU GPU 128-core NVIDIA MaxellTM GPU 512-core NVIDA VoltaTM GPU with 64 Tensor Cores Memory 4GB 64-bit LPDDR4 25.6GB/s 32GB 256-bit LPDDR4x 136.5GB/s Power 5W/10W 10W/15W/30W Mechanical 69,6mm x 45mm 100mm x 87 mm DL Accelerator 2x NVDLA Engines AI Performance 472 GFLOPs 32 TOPs Các thuật toán hạng nhẹ phổ biến cho phát hiện đối tượng như Tiny-YOLOv3, SSD – ResNet18, DetectNet_v2 được chúng tôi sử dụng trên Edge AI để phát hiện người xuất hiện trong khu vực. Mô hình của các thuật toán được huấn luyện bằng công cụ Transfer Learning Toolkit của NVIDIA và được chia sẻ công khai cho nhiều bài toán khác nhau [27]. Thiết bị Edge AI sử dụng TensorRT [28], một nền tảng tính toán hạng nhẹ cho các phần cứng nhúng tiêu thụ ít điện năng, sử dụng GPU của NVIDIA, để thực hiện lượng tử hóa mô hình bằng việc giảm độ chính xác của loại dữ liệu về INT8 hoặc FP16. Sau quá trình suy luận của mô hình DL, các đối tượng trong một khung hình được biểu diễn
- 194 IVA-EC: GIẢI PHÁP PHÂN TÍCH VIDEO THÔNG MINH DỰA TRÊN ĐIỆN TOÁN BIÊN dưới dạng các bounding box và nhãn tương ứng. Dữ liệu này ngay lập tức được đóng gói lại thành các bản tin và truyền đến máy chủ phân tích thông qua dịch vụ IBM Event Streams. Hệ thống máy chủ phân tích video được triển khai trên hệ thống điện toán đám mây của IBM (IBM Cloud) sẽ kết xuất các sự kiện bằng thuật toán theo vết đối tượng (tracking object) với dữ liệu đầu vào là chuỗi bounding box của 5 khung hình liên tiếp. B. Kết quả thử nghiệm, nhận xét và đánh giá Để đánh giá tính khả thi của giải pháp, chúng tôi quan tâm đến ba yếu tố: (1) Hiệu năng khi chạy các thuật toán DL trên thiết bị Edge AI (FPS – Frame Per Second); (2) Băng thông cần thiết cho quá trình truyền tải bản tin từ thiết bị Edge AI đến máy chủ phân tích (bytes/s); (3) Thời gian cần thiết để kết xuất một sự kiện (ms). Bảng 2 cho thấy hiệu năng xử lý của 2 thiết bị Jetson Nano và Jetson AGX Xavier với dữ liệu là dòng video có độ phân giải FullHD. Nhìn chung 2 thiết bị này đều đáp ứng tốt khả năng suy luận theo thời gian thực cho 1 dòng video bất kỳ (tốc độ xử lý > 30FPS). Đặc biệt, Jetson AGX Xavier có hiệu năng xử lý rất ấn tượng lên đến 442 FPS với thuật toán DetectNet_v2. Tức là thiết bị Edge AI sử dụng phần cứng Jetson AGX Xavier có thể xử lý đồng thời 30 dòng video có tốc độ khung hình là 15 FPS (tốc độ khung hình thường dùng trong hệ thống camera giám sát). Các thuật toán Tiny YOLO-v3 và SSD-RestNet18 có tốc độ xử lý thấp hơn DetectNet-v2 do các thuật toán này có thể phát hiện được hơn 80 loại đối tượng khác nhau, trong khi DetectNet-v2 chỉ nhận biết được 4 loại đối tượng. Bảng 2. Tốc độ suy luận của các thuật toán phát hiện đối tượng trên thiết bị Edge AI Model Arch Resolution Precision Number of classes Jetson Nano Jetson AGX Xavier Tiny YOLO-v3 416 416 FP16 80 44 FPS 223 FPS SSD – ResNet18 300 300 FP16 91 40,6 FPS 215 FPS DetectNet_v2 480 272 FP16 4 63 FPS 442 FPS Do cấu hình phần cứng thấp hơn nhiều so với Jetson AGX Xavier, Jetson Nano chỉ có thể xử lý 4 dòng video đồng thời nếu triển khai thuật toán DetectNet_v2. Tuy nhiên, với các ứng dụng triển khai cho một số lượng nhỏ camera thì Jetson Nano lại lựa chọn phù hợp và tối ưu về chi phí. Hình 4 là thống kê về lưu lượng dữ liệu mà thiết bị Edge AI gửi lên một topic trên hệ thống IBM Event Streams theo thời gian thực. Trong kịch bản này, chúng tôi sử dụng thiết bị Jetson AGX Xavier để xử lý 30 dòng video đồng thời với thuật toán DetectNet_v2. Kết quả detect trên mỗi khung hình của một camera sẽ được đóng gói thành một bản tin và gửi lên một parttition tương ứng thuộc một topic được tạo riêng cho mỗi thiết bị Edge AI. Băng thông cần thiết cho quá trình truyền dữ liệu cho cả 30 camera khoảng 217 KB/s, nhỏ hơn rất nhiều so với băng thông cần thiết để truyền dòng video. Điều này chứng minh tính ưu việt của mô hình đề xuất trong việc giảm tải cho hệ thống điện toán đám mây. Hơn nữa, việc xử lý dữ liệu text trên máy chủ phân tích để kết xuất sự kiện có tốc độ cao với độ trễ < 1s do các dữ liệu của từng camera được lưu trữ độc lập theo từng phân vùng và các chương trình phân tích xử lý đa luồng nhờ tận dụng sức mạnh tính toán khổng lồ của điện toán đám mây. Hình 4. Thống kê lưu lượng dữ liệu gửi lên một topic theo thời gian thực V. KẾT LUẬN Trong bài báo này, chúng tôi đã trình bày một giải pháp phân tích video thông minh cho các hệ thống camera giám sát để có thể phân tích các dòng video một cách tự động, kết xuất các thông tin hữu ích cho người sử dụng theo thời gian thực, tận dụng tối đa hạ tầng của các hệ thống camera giám sát sẵn có. Các kết quả thử nghiệm đã chứng tỏ tính khả dụng giải pháp. Việc triển khai các mô hình học sâu trên các thiết bị nhúng hạn chế là hoàn toàn khả thi với phần cứng và phần mềm sẵn có trên thị trường. Thiết bị Edge AI tại biên sẽ mở ra một hướng tiếp cận mới trong việc áp dụng AI vào các lĩnh vực khác nhau của đời sống. TÀI LIỆU THAM KHẢO [1] Smart home IP camera shipments worldwide from 2012 to 2019 (in million units), [Online]. Available: pments-worldwide/.
- Đào Vũ Hiệp, Mạc Đình Hiếu, Tống Việt Hùng, Vũ Văn Phán, Hà Quốc Trung 195 [2] An Intelligent Video Analytics Platform, [Online]. Available: video. [3] Cisco Global Cloud Index: Forecast and Methodology, White Paper. [Online]. Available: 738085.html, 2016-2021. [4] Shi, Weisong, et al. "Edge computing: Vision and challenges". IEEE internet of things journal 3.5: 637-646, 2016. [5] Satyanarayanan, Mahadev. "The emergence of edge computing". Computer 50.1: pp. 30-39, 2017. [6] De Donno, Michele, Koen Tange, and Nicola Dragoni. "Foundations and evolution of modern computing paradigms: Cloud, iot, edge, and fog". Ieee Access 7: pp. 150936-150948, 2019. [7] Shi, Weisong, and Schahram Dustdar. "The promise of edge computing". Computer 49.5: pp. 78-81, 2016. [8] Zhou, Zhi, et al. "Edge intelligence: Paving the last mile of artificial intelligence with edge computing". Proceedings of the IEEE 107.8: pp. 1738-1762, 2019. [9] Li, He, Kaoru Ota, and Mianxiong Dong. "Learning IoT in edge: Deep learning for the Internet of Things with edge computing". IEEE network 32.1: pp. 96-101, 2018. [10] Verhelst, Marian, and Bert Moons. "Embedded deep neural network processing: Algorithmic and processor techniques bring deep learning to iot and edge devices". IEEE Solid-State Circuits Magazine 9.4: pp. 55-65, 2017. [11] Zhao, Zhuoran, Kamyar Mirzazad Barijough, and Andreas Gerstlauer. "DeepThings: Distributed adaptive deep learning inference on resource-constrained IoT edge clusters". IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 37.11: pp. 2348-2359, 2018. [12] Tang, Jie, et al. "Enabling deep learning on IoT devices". Computer 50.10: pp. 92-96, 2017. [13] Mohammadi, Mehdi, et al. "Deep learning for IoT big data and streaming analytics: A survey". IEEE Communications Surveys & Tutorials 20.4: pp. 2923-2960, 2018. [14] Qi, Xuan, and Chen Liu. "Enabling deep learning on iot edge: Approaches and evaluation". 2018 IEEE/ACM Symposium on Edge Computing (SEC). IEEE, 2018. [15] Tan, Tianxiang, and Guohong Cao. "FastVA: Deep Learning Video Analytics Through Edge Processing and NPU in Mobile". arXiv preprint arXiv: pp. 2001.04049, 2020. [16] Chen, Jianguo, et al. "Distributed deep learning model for intelligent video surveillance systems with edge computing". IEEE Transactions on Industrial Informatics (2019). Chen, Jianguo, et al. "Distributed deep learning model for intelligent video surveillance systems with edge computing." IEEE Transactions on Industrial Informatics, 2019. [17] Zhou, Zhi, et al. "Edge intelligence: Paving the last mile of artificial intelligence with edge computing". Proceedings of the IEEE 107.8: pp. 1738-1762, 2019. [18] Ali, Muhammad, et al. "Edge enhanced deep learning system for large-scale video stream analytics". 2018 IEEE 2nd International Conference on Fog and Edge Computing (ICFEC). IEEE, 2018. [19] Shawahna, Ahmad, Sadiq M. Sait, and Aiman El-Maleh. "FPGA-based accelerators of deep learning networks for learning and classification: A review". IEEE Access 7: pp. 7823-7859, 2018. [20] Chen, Jiasi, and Xukan Ran. "Deep learning with edge computing: A review". Proceedings of the IEEE 107.8: pp. 1655-1674, 2019. [21] Pan, Sinno Jialin, and Qiang Yang. "A survey on transfer learning". IEEE Transactions on knowledge and data engineering 22.10: pp. 1345-1359, 2009. [22] Redmon, Joseph, and Ali Farhadi. "Yolov3: An incremental improvement". arXiv preprint arXiv:1804.02767 2018. [23] Cloud Tensor Processing Units (TPUs). Google Cloud [Online]. Available: [24] Shawahna, Ahmad, Sadiq M. Sait, and Aiman El-Maleh. "FPGA-based accelerators of deep learning networks for learning and classification: A review". IEEE Access 7: pp. 7823-7859, 2018. [25] Farshchi, Farzad, Qijing Huang, and Heechul Yun. "Integrating NVIDIA deep learning accelerator (NVDLA) with RISC-V soc on firesim". 2019 2nd Workshop on Energy Efficient Machine Learning and Cognitive Computing for Embedded Applications (EMC2). IEEE, 2019. [26] NVIDIA Jetson - The AI Platform for Autonomous Machines. Available: develop/hardware. [27] NVIDIA TensorRT - Programmable Inference Accelerator. Available: [28] Transfer Learning Toolkit for Intelligent Video Analytics V2.0 Release Notes. Available: com/metropolis/TLT/tlt-release-notes/index.html.
- 196 IVA-EC: GIẢI PHÁP PHÂN TÍCH VIDEO THÔNG MINH DỰA TRÊN ĐIỆN TOÁN BIÊN IVA-EC: INTELLIGENT VIDEO ANALYTICS SOLUTION BASED ON EDGE COMPUTING Dao Vu Hiep, Mac Dinh Hieu, Tong Viet Hung, Vu Van Phan, Ha Quoc Trung ABSTRACT: This paper proposes an Intelligent Video Analytics solution (IVA-EC) using Deep Learning (DL) algorithms. Such solution is implemented in an edge-computing enviroment. It can be used to build end-to-end AI-powered applications, namely smart city, smart traffic monitoring, smart factory, directly on existing camera surveillance systems. The heart of IVA-EC involves a group of Edge AI devices that allows organizations to turn raw video data into actionable insights (metadata) locally in real time. The metadata is subsequently sent to the Video Analytic servers, which are deployed in cloud computing for content analysis. The aim of IVA-EC is to provide instantaneous event notification of rule-violations. The notifications are displayed in the Video Management System (VMS) with an intuitive user interface. The solution enables real-time intelligent video analysis for hundreds to thousands of cameras simultaneously while ensuring the privacy of end-users.