Thiết kế thực thi tảng xử lý ảnh thời gian thực, giá rẻ TMS320DM8168 Cao-Son Dinh1, Van-Xuan Tran Minh-Trien Pham2 Viện Hệ thống Quang Điện tử, Viện Nghiên cứu Phát triển Viettel Khoa Điện tử Viễn thông, Đại học Công nghệ - Đại học Quốc gia Hà Nội Email: sondc1@viettel.com.vn, xuantdmi@gmail.com, trienpm@vnu.edu.vn EOImaging (Mỹ) Thiết bị thiết kế chuyên dụng cho mục đích bắt bám mục tiêu Có khả bắt bám theo nhiều đặc trưng khác mức xám (intensity), đường bao (edge), so khớp tương đồng (correlation), vv… Do đó, phù hợp với nhiều tốn bắt bám khác nhau, điều kiện môi trường, với đối tượng cụ thể Một đặc điểm vượt trội sản phẩm có băng thơng đầu vào lớn, xử lý với tốc độ bit-rate đầu vào lên đến 3Gbps (tương ứng với độ phân giải 1080p, tốc độ 60 hình/giây), đồng thời xử lý với đầu vào video dạng tương tự (PAL/NTSC) dạng số 3G-SDI Abstract— Cùng với phát triển công nghệ bán dẫn, mật độ tích hợp ngày cao Các hãng sản xuất chip lớn cho đời vi xử lý có khả tính tốn dấu phẩy động, tốc độ tính tốn lên đến hàng nghìn triệu lệnh giây (>1000 MIPS) từ năm 2010 Kể từ đó, người ta quan tâm nhiều đến việc đưa thuật tốn tính tốn phức tạp lên vi xử lý nhỏ gọn, tiêu tốn lượng để tạo tảng xử lý thông minh, hỗ trợ người nhiều ứng dụng xử lý hình ảnh Từ kết tìm hiểu, phân tích sản phẩm hãng lớn giới Nhóm tác giả đề xuất nội dung nghiên cứu đề tài nghiên cứu, thiết kế tảng phần cứng nhúng cho phép thực thi ứng dụng xử lý ảnh, đáp ứng thời gian thực với mục đích thiết kế, chế tạo thành cơng tảng xử lý tính tốn mạnh mẽ, hỗ trợ thực thi thuật toán xử lý ảnh phức tạp, tiêu tốn công suất thấp, nhỏ gọn thay cho tảng máy tính thơng thường Các thành phần xử lý sản phẩm chip DSP mã TMS320C6455 Texas Instruments Đồng thời để xử lý liệu đầu vào tốc độ cao, module FPGA (Spartan XC6SLX100) sử dụng để thực đọc tiền xử lý liệu trước đưa vào xử lý tinh DSP Module FPGA làm nhiệm vụ điều khiển việc xuất liệu chuẩn tương tự, số, tương ứng với đầu vào Trong xử lý với tốc độ cao kích thước thiết bị 114x127 (mm), công suất tiêu thụ vào khoảng 12W Keywords: Xử lý ảnh, hệ thống nhúng, DSP, SoC, SoM, ARM I GIỚI THIỆU Thiết bị xử lý ảnh thời gian thực đề xuất nghiên cứu, chế tạo phục vụ việc xây dựng tảng phần cứng nhúng có tài nguyên lực xử lý đủ mạnh để thực loạt toán ứng dụng lĩnh vực thị giác máy tính; Ví dụ tiền xử lý ảnh, lọc nhiễu, phân tích video hay chống rung hình ảnh Trong trình định nghĩa sản phẩm, tác giả tham khảo nhiều cấu hình sản phẩm khác hãng giới Trong đó, bật thiết bị bắt bám mục tiêu tốc độ cao Video Tracker 8200 (1) EOImaging (Mỹ), thiết bị xử lý ảnh tảng DSP IGEPv2 (2) ISEE (Tây Ban Nha), KIT phát triển xử lý ảnh OZ745 (3) Omnitek (Anh), KIT phát triển Z3-DM8169-VI-RPS (4) Z3 Technology (Mỹ) [1-4] Hình 1: KIT phát triển xử lý ảnh streaming video Z3 Technology [4] Với KIT phát triển xử lý ảnh streaming video Z3-DM8169VI-RPS (Mỹ) KIT phát triển Z3-DM8169-VI-RPS có kiến trúc gồm chip xử lý DSP DM8168 FPGA Spartan Sản phẩm hỗ trợ đầu vào video: Component, HDMI, 3G-SDI, đầu HDMI, 3G-SDI Khối xử lý gồm lõi ARM cortex A8 tốc độ 1.2 GHz lõi DSP C674x tốc độ GHz Về tính năng, ngồi tính xử lý ảnh mà thư viện TI hỗ trợ, KIT cịn cho phép tính mã hóa H.264 MPEG-2 Xử lý với độ phân giải 1080p/i 60fps Kích thước bo mạch 218x90 (mm) Cơng suất hoạt động: 14W Hình 2: Thiết bị xử lý ảnh Video Tracker 8200 [1] Trong số đó, ta phân tích hai sản phẩm tiêu biểu là: Thiết bị xử lý ảnh bắt bám mục tiêu Video Tracker 8200 – 152 II YÊU CẦU VÀ THIẾT KẾ CHI TIẾT PHẦN CỨNG HỆ THỐNG - DSP clock: > 600MHz - Hỗ trợ tính tốn dấu phảy động - Tốc độ tính tốn: > 4000 MIPS - ARM clock: > 800MHz - Đầu vào video: hỗ trợ đầu vào song song - Đầu video: hỗ trợ đầu tương tự, số với độ phân giải khác 64Mbit 256Mbyte 512Mbyte (4Gbit) Qua phân tích sản phẩm tham khảo tiêu biểu, định nghĩa sản phẩm thiết bị xử lý ảnh tảng nhúng với tên gọi Apollo17 Sơ đồ khối kiến trúc xử lý Apollo17 đề xuất sau: Chip xử lý c Bộ nhớ SPI Flash Hình 3: Sơ đồ khối kiến trúc tảng Apollo17 Trong đó, Đầu vào video: Nhận luồng video từ đầu vào tương tự chuẩn PAL/NTSC từ đầu vào số IP Khối xử lý: Khối xử lý thực thi nhiệm vụ xử lý tín hiệu hình ảnh thu nhận từ đầu vào Đảm bảo việc xử lý đáp ứng thời gian thực (thời gian xử lý phải nhỏ 40ms ~ 25 hình/giây) Khối xử lý chia thành loại: Tiền xử lý hậu xử lý • Tiền xử lý: Thực điều khiển việc đọc liệu video đầu vào từ ADC thông qua giao thức Ethernet Thực thao tác tiền xử lý ảnh (lọc nhiễu, biến đổi khơng gian màu, …) • Hậu xử lý: Thực thuật toán phức tạp; điều khiển đầu video giao tiếp với máy trạm qua TCP/IP Bộ nhớ: Bộ nhớ sử dụng gồm loại: nhớ dùng để lưu trữ hệ điều hành tham số cấu hình hệ thống; nhớ đệm liệu phục vụ thực thi hệ điều hành tác vụ xử lý ảnh điều khiển Đầu video: Tín hiệu video sau qua khối xử lý ảnh nén truyền qua IP hiển thị hình qua kết nối HDMI Yêu cầu chi tiết khối chức Apollo17, cụ thể bảng 1: DDR3 d 10 e 11 a b Đầu vào video Đầu vào video SD Đầu vào video HD (tương tự) Đầu vào video HD (số) Khối xử lý CVBS TVP5150AM /TI/Mỹ YPrPb TVP7002 /TI/Mỹ IP KSZ9031MNXIA /Microchip/Mỹ KSZ9031MNXIA/M icrochip/Mỹ TPD12S521DBTR/ TI/Mỹ KSZ9031MNXIA/M icrochip/Mỹ MAX3232CPWR/M AX3488EESA+T/TI /Mỹ RS232/RS 422 2xRS232C 1xRS422 13 USB host OTG Giao diện joystick/keyboard/ mouse LED màu RED LED màu BLUE HDMI 1.3 TPD12S521DBTR/ TI/Mỹ Đảm bảo cấp nguồn cho bo mạch, linh kiện đặc thù (chip, RAM) ngoại vi kết nối vào TPS5450QDDARQ 1/TPS65253RHDR/ TPS22918DBVR/TP S22810DBVR/TPS5 4620RGYR/TPS770 18DBVR/TPS51200 DRCR/TPS3808G09 DBVRG4/TI/Mỹ 15 16 f 17 153 Bộ nhớ ≥ 4GB eMMC Đầu video Đầu số IP IP Đầu hiển HDMI 1.3 thị HDMI Kênh kết nối ngoại vi Kết nối 1Gbps, GMII Ethernet W25Q64FVSSIG /Winbond/Đài Loan MT41J256M8DA093:K /Micron/Mỹ MT29F4G16ABAD AH4IT:D/Micron/Mỹ TPD12S521DBTR/ TI/Mỹ 12 14 Bảng 1: Yêu cầu thiết kế chi tiết phần cứng hệ thống Yêu cầu Linh kiện tham TT Tên khối khảo(Mã NSX/ S Thông số Hãng/Xuất xứ) L kỹ thuật NAND Flash TMS320DM8168C CYG2/TI/Mỹ Led báo nguồn LED báo trạng Đầu hiển thị HDMI Khối nguồn Dải điện áp: 5.536V/3A Pwr tree: 5V, 3.3V, 2.5V, 1.8V, 1.5V, 1.2V, 0.75V Cơng suất TB < 15W • A Khối đầu vào video Chúng ta biết rằng, tín hiệu video chia thành loại phân theo mục đích: video quảng bá, phục vụ truyền hình, giải trí (broadcast) video đồ họa, phục vụ ứng dụng hình ảnh PC, thiết bị chuyên dụng (graphics) Có nhiều định dạng video tương tự số khác tồn song song Việc thiết kế khối video input phải tuân theo số nguyên tắc định phân tích Đầu vào tương tự • Tín hiệu video tương tự chia thành chuẩn giao tiếp bản: Composite hay CVBS (1 dây); S-Video (2 dây) Component (3 dây) • Các ADC thực trình lấy mẫu, lượng tử mã hóa tín hiệu đầu số tín hiệu tương tự Ngồi ra, tín hiệu video nói chung, cần ý đến việc hiển thị hình Và tham số quan trọng tần số quét tín hiệu (fv) Tần số fv lớn, ảnh hiển thị mịn Bảng 2: Mối liên hệ độ phân giải ảnh, tần số quét mành tần số pixel tối đa Chuẩn Kích thước (pixel) W Composite S Connector Component Connector Connector Hình 4: Các chuẩn video tương tự H Độ phân giải thực (pixel) W H 480p 720 480 858 525 D1 720 576 864 625 720p 1280 720 1650 750 1080p 1920 1080 2200 112 • Dạng sóng tín hiệu video tương tự sau: Hình 5: Dạng sóng tín hiệu video tương tự Việc biến đổi để tín hiệu tương tự định dạng khác minh họa hình sau: Tần số quét h (Hz) 25 30 60 100 25 30 60 100 25 30 60 100 25 30 60 100 Tần số pixel tối đa (Hz) Tần số pixel tối đa (MHz) 5,630,625 6,756,750 13,513,500 22,522,500 6,750,000 8,100,000 16,200,000 27,000,000 15,468,750 18,562,500 37,125,000 61,875,000 30,937,500 37,125,000 74,250,000 123,750,000 5.6 6.8 13.5 22.5 6.8 8.1 16.2 27.0 15.5 18.6 37.1 61.9 30.9 37.1 74.3 123.8 Như vậy, bảng cho ta thấy, với chuẩn (độ phân giải) tần số quét mành khác cho ta tần số video tối đa khác Các IC đọc video đầu vào phổ biến thường hoạt động tần số pixel tối đa phổ biến là: 13.5MHz, 27.0MHz, 75MHz 125MHz Ta xét nguyên lý khối đầu thu tín hiệu video tương tự sau: Hình 6: Minh họa biến đổi tín hiệu video gốc sang composite video • Việc thu nhận tín hiệu video tương tự thực cách sử dụng ADC chuyên dụng (như TVP5150AM Texas Intrusment; MAX9526 Maxim Integrated hay ADV7403 Analog Device) Hình 7: Nguyên lý khối đọc đầu vào tương tự composite 154 Theo đó, tín hiệu video tương tự từ đầu vào CVBSOUT1&CVBSOUT2 đưa vào chip ADC; Tại đây, thực trình lấy mẫu Dữ liệu đầu liệu chuyển đổi kênh màu (mã hóa) Dữ liệu đẩy bus song song 8/16/24 bit Tùy thuộc vào cấu tạo chip ADC Trong trường hợp bit (YOUT0 đến YOUT7) IC hoạt động với thạch anh tần số 14.31818MHz nhân tần (PLL) tạo tần số pixel 27MHz cung cấp cho trình đọc liệu để lưu trữ nhân linux biên dịch cộng với file hệ thống (root file system) • • Đầu vào số Đầu vào video số bao gồm chuẩn phổ biến sau: HDMI -Độ dài cáp: 30m - Bitrate: >1000M b/s SDI USB 3.0 IP/GigE Camera Link -Độ dài cáp: 15m -Bitrate: >2000 Mb/s -Độ dài -Độ dài -Độ dài cáp: cáp: 10m cáp: 100m -Bitrate: 100m -Bitrate: 2400Mb/s -Bitrate: 3000Mb 1000Mb/ /s s Hình 8: Các chuẩn video số Bo mạch Apollo17 hỗ trợ đầu vào: HDMI IP • Đầu vào HDMI: Trong hình nguyên lý khối thu tín hiệu HDMI sử dụng chip hãng Analog Devices (ADV7611) Tín hiệu HDMI từ đầu vào jack 19 chân (J16) đưa vào chip nhận (HDMI receiver), thực trình lấy mẫu biến đổi không gian màu Dữ liệu đầu gồm 24bit YCrCb chuyển sang khối nhận đầu vào video DSP (VIN0_D0 đến VIN0_D23) Lõi xử lý ARM giao tiếp với nhớ flash thông qua giao thức SPI Quá trình khởi động gồm bước: Bước 1: Hệ thống gọi đến chương trình u-boot nhớ SPI Cấu hình lõi xử lý ngoại vi cần thiết Bước gọi “first stage boot” Bước 2: Sau khởi tạo thành công, hệ thống gọi đến nhân linux Lúc nhân linux copy vào nhớ đệm DDR3 để thực thi tiếp tục gọi đến driver lại giao diện hệ điều hành Bước gọi “second stage boot” Ngồi ra, sử dụng thẻ nhớ microSD để lưu trữ chương trình u-boot nhân Linux cộng với file hệ thống Quá trình khởi động gồm bước Thời gian khởi động tùy thuộc vào kích thước file hệ thống số driver cài đặt Thông thường thời gian khởi động từ 15 đến 30 giây Bộ nhớ đệm Bộ nhớ đệm sử dụng thiết kế nhớ DDR3 (Double Data Rate Type 3) Là loại nhớ truy cập ngẫu nhiên động, có tốc độ truy cập liệu cao Chip TMS320DM8168 [5] bao gồm khối điều khiển nhớ đệm với độ rộng liệu trao đổi tối đa 32 bit Như vậy, dùng DDR3 loại bit phải cần kết nối DDR3 vào điều khiển EMIF chip xử lý Trong trường hợp dùng DDR3 loại 16 bit ta cần kết nối DDR3 cho điều khiển Ngoài ra, việc thiết kế layout khối DDR3 phức tạp cần tuân thủ nguyên tắc khắt khe độ dài đường tín hiệu (xung nhịp, liệu địa chỉ), khoảng cách IC việc bố trí tụ lọc C Đầu video Video sau xử lý truyền theo cách Một là, hiển thị hình thơng qua giao diện HDMI Hai là, nén truyền ngồi thơng qua giao diện IP Đầu HDMI Chip TMS320DM8168 hỗ trợ đầu HDMI trực tiếp Do vậy, việc xuất liệu hình HDMI đơn giản Trong thiết kế cần sử dụng thêm IC đệm mức tín hiệu kết nối với jack HDMI chuẩn đạt yêu cầu Đầu IP Khối truyền thông Ethernet chip TMS320DM8168 hỗ trợ tốc độ truyền tối đa 1Gbps Hình 9: Nguyên lý khối đọc đầu vào số HDMI B Bộ nhớ Bộ nhớ sử dụng thiết kế Apollo17 gồm loại sau: Bộ nhớ lưu trữ Bộ nhớ lưu trữ bao gồm IC nhớ Flash cấu trúc SPI dùng để lưu trữ chương trình u-boot thẻ nhớ 155 Hình 10: Nguyên lý kết nối IC giao tiếp Ethernet Thiết kế khối đầu IP sử dụng IC chuyên dụng giúp truyền tải tín hiệu mạng tầng vật lý D Khối cấp nguồn Nguồn cấp với đầu vào dải rộng 5V ~ 36V@3A cung cấp nguồn tới mạch nguồn thứ cấp 3V3, 1V8, 1V2, 1V0 cấp cho chipset mạch Thứ tự khởi động nguồn cấp 3.3V phải tuân thủ hình sau: Hình 12: Bản vẽ gia cơng bo mạch thử nghiệm Hình 13: Bản vẽ lắp ráp linh kiện mặt Thời gian (ms) Hình 11: Thứ tự khởi động nguồn cấp cho DSP E Gia công chế tạo Sản phẩm hồn thiện phiên 1.0 gia cơng chế tạo thử nghiệm nhà máy Hàn Quốc Hình 14: Bản vẽ lắp ráp linh kiện mặt 156 III ĐÁNH GIÁ HIỆU NĂNG VÀ CHI PHÍ HỆ THỐNG C So sánh với sản phẩm tương đương Hạng mục so sánh Như vậy, sau hoàn thành chế tạo thử bo mạch mẫu Chúng ta bắt tay vào trình bring-up bo mạch, thiết kế phần mềm thử nghiệm thuật toán mẫu để đánh giá khả xử lý thiết bị Thuật toán lựa chọn để đánh giá thuật toán phát mục tiêu chuyển động Đây toán kinh điển xử lý ảnh có nhiều ứng dụng thực tế, đặc biệt toán giám sát an ninh Trong báo nhóm sử dụng thuật toán phổ biến việc phát đối tượng chuyển động Nội dung lưu đồ xử lý thuật toán cách thực thi hướng dẫn [6-10] Kích thước Cơng suất Hiệu Giá A Triển khai thuật tốn Thuật toán phát mục tiêu chuyển động (RGA) viết ngôn ngữ C++ triển khai tảng DSP thiết bị Apollo17 Kết đánh giá cụ thể sau: Bảng 3: Kết đánh giá thuật toán phát chuyển động STT Chỉ tiêu, tính Xác suất phát đối tượng điều kiện thường Xác suất phát đối tượng điều kiện ánh sáng yếu < 15 lux Xác suất phát đối tượng với camera nhiệt Kích thước đối tượng nhỏ phát Xác suất phất nhầm đối tượng Số lượng đối tượng chuyển động phát đồng thời Độ nhạy thuật tốn theo mức xám Tốc độ xử lý Thông số Đơn vị 95.2 % 93.9 % 94.4 % 7x9 Pixel 4.2 % Đối tượng Mức Hình/giây 30 20 50÷100 IV Z3-DM8169VI-RPS (Mỹ) Apollo17 (VN) 218x90 mm 205x250 mm 14W 1080p@60 fps Giá bán: 6.500$ 9W 1080p@60 fps VGA@100fps Giá sản xuất thử nghiệm: 3.000$ KẾT LUẬN Đề tài thực thành công nhiệm vụ đặt với mục tiêu chính: Nghiên cứu, thiết kế thành công bo mạch phần cứng Apollo17 cho phép thực thi thuật toán xử lý ảnh phức tạp thay cho máy tính có chức tương đương với hệ thống nhúng giới với giá thành rẻ so với thị trường Hướng phát triển đề tài là: - Tối ưu kích thước bo mạch xuống 10x10 cm Trang bị cho máy tính nhúng phục vụ mục đích xử lý hình ảnh ứng dụng Quân Dân - Trang bị đầu vào tốc độ cao (>100fps) phục vụ mục đích lắp đặt máy bay khơng người lái UAV Cho phép xử lý hình ảnh trình bay trinh sát TÀI LIỆU THAM KHẢO [1] Video Tracker 8200: http://www.eoimaging.com/documents/8200_R1.pdf [2] IGEPv2: https://www.isee.biz/products/igep-processor-boards/igepv2dm3730 [3] OZ745: https://www.avnet.com/shop/us/p/kits-and-tools/developmentkits/avnet-engineering-services/aes-oz745-3074457345623375756/ [4] Z3-DM8169-VI-RPS: http://z3technology.com/oem/Product/Z3-DM8169VI-RPS/32.html [5] TMS320DM8168/Technical Documents http://www.ti.com/product/TMS320DM8168/technicaldocuments [6] Phạm Văn Khiền, Phạm Trần Hương Giang, “Báo cáo đánh giá thuật toán phát đối tượng chuyển động”, Viettel R&D 2016 [7] Shehrzad Qureshi, “Embedded Image Processing on the TMS320C6000TM DSP”, Springer Science+Business Media, Inc 2005 [8] Branislav Kisacanin, Shuvra S.Bhattacharyya, Sek Chai, “Embedded Computer Vision”, Springer 2009 [9] Christopher Hallinan, “Embedded Linux Primer”, Pearson Education, Inc 2011 [10] Augusto Vega, Pradip Bose, Alper Buyuktosunoglu, “Rugged Embedded Systems: Computing in Harsh Environment”, Elsevier 2017 B Một số hình ảnh thử nghiệm Hình 15: Phát điều kiện thiếu sáng Video Tracker 8200 (Mỹ) 114x127 mm 12 W 1080p@60 fps Giá bán: 8.000$ Hình 16: Phát với ảnh nhiệt Hình 17: Phát đồng thời 30 mục tiêu 157 ... lấy mẫu, lượng tử mã hóa tín hiệu đầu số tín hiệu tương tự Ngồi ra, tín hiệu video nói chung, cần ý đến việc hiển thị hình Và tham số quan trọng tần số quét tín hiệu (fv) Tần số fv lớn, ảnh hiển... đọc đầu vào tương tự composite 154 Theo đó, tín hiệu video tương tự từ đầu vào CVBSOUT1&CVBSOUT2 đưa vào chip ADC; Tại đây, thực trình lấy mẫu Dữ liệu đầu liệu chuyển đổi kênh màu (mã hóa) Dữ... (root file system) • • Đầu vào số Đầu vào video số bao gồm chuẩn phổ biến sau: HDMI -Độ dài cáp: 30m - Bitrate: >1000M b/s SDI USB 3.0 IP/GigE Camera Link -Độ dài cáp: 15m -Bitrate: >2000 Mb/s