Auto++ detecting cars using embedded microphones in real time: Bài dịch của một Bài báo trong Ubicoms 2018, giới thiệu một giải pháp mới được trình bày trong Hội nghị về nhận diện xe hơi sử dụng smartphone Trong nghiên cứu này, chúng tôi đề xuất một hệ thống phát hiện xe hơi đến gần cho người sử dụng điện thoại thông minh. Ngoài việc phát hiện ra xe hơi, hệ thống cũng có thể ước lượng được hướng lái xe cũng như đếm số lượng xe xung quanh người sử dụng. Chúng tôi đạt được các mục tiêu này bằng cách xử lý tín hiệu âm thanh thu được bởi microphone có sẵn trong điện thoại di động của người dùng.
Trang 1PHÁT HIỆN XE HƠI SỬ DỤNG MICROPHONE CỦA SMARTPHONE
TRONG THỜI GIAN THỰC
SUGANG LI, XIAORAN FAN, YANYONG ZHANG, WADE TRAPPE, JANNELINDQVIST, and RICHARD E HOWARD, WINLAB, Rutgers University
Trong nghiên cứu này, chúng tôi đề xuất một hệ thống phát hiện xe hơi đến gần chongười sử dụng điện thoại thông minh Ngoài việc phát hiện ra xe hơi, hệ thống cũng cóthể ước lượng được hướng lái xe cũng như đếm số lượng xe xung quanh người sử dụng.Chúng tôi đạt được các mục tiêu này bằng cách xử lý tín hiệu âm thanh thu được bởimicrophone có sẵn trong điện thoại di động của người dùng Thách thức lớn nhất màchúng tôi phải đối mặt trong thực tế là tiếng ồn xe cộ chủ yếu là do ma sát lốp xe do đóthiếu tần số đỉnh formant cao hoặc thiếu cấu trúc thời gian Ngoài ra, môi trường ngoàitrời có đặc điểm tiếng ồn âm thanh phức tạp, tệ hơn khi tín hiệu được thu bằng microkhông chuyên nghiệp trong smartphones Chúng tôi giải quyết những thách thức nàybằng cách theo dõi một đặc trưng mới: thành phần tần số tối đa vượt ngưỡng Chúng tôirút ra tính năng này với một bộ phát hiện đường biên mờ Qua các thí nghiệm chi tiết,chúng tôi thấy hệ thống của chúng tôi mạnh mẽ trên các loại xe và điều kiện môi trườngkhác nhau, và cho phép phát hiện và đếm xe hơi Chúng tôi đã test hệ thống của chúngtôi sử dụng các bản nhạc âm thanh được ghi lại từ 7 mẫu xe khác nhau, bao gồm SUV,sedan cỡ trung, xe nhỏ gọn và xe điện Chúng tôi cũng đã thử nghiệm hệ thống củachúng tôi với người dùng đi bộ trong các môi trường ngoài trời khác nhau bao gồm bãiđậu xe, khuôn viên trường học, khu dân cư và trung tâm mua sắm Kết quả cho thấychúng tôi có thể phát hiện chính xác và mạnh mẽ những chiếc xe với yêu cầu về CPU và
bộ nhớ thấp
1 GIỚI THIỆU (INTRODUCTION)
Sử dụng điện thoại thông minh để tìm hiểu môi trường xung quanh của người dùng
và học thông tin theo ngữ cảnh đã nhận được nhiều sự chú ý trong vài năm qua [9, 12,
21, 24, 37] Một lượng lớn các nghiên cứu như vậy đã được tiến hành đối với người sửdụng khi họ đang lái xe [3, 30, 35], trong khi với với người đi bộ thì rất ít Trong nghiêncứu này, chúng tôi tập trung vào tìm hiểu và học một thông tin ngữ cảnh quan trọng chongười đi bộ bằng cách sử dụng điện thoại thông minh của họ - có hay không một chiếc xegần đó gần đó
Trang 2Khả năng phát hiện xe đang đến bằng điện thoại thông minh có thể dùng để chophép/tăng cường cho một số ứng dụng ubiquitous quan trọng khác Đầu tiên, với nhữngthông tin sẵn có, thông báo có thể được gửi ra để cảnh báo người sử dụng chú ý (thôngqua âm thanh hoặc rung) khi tiếp cận xe xe hơi khi họ đang đi qua giao lộ hoặc đi lạc vào
đường (Minh hoạ trong Hình 1) Thứ hai, chúng ta có thể kết hợp các cảm biến xe hơi ở
các khu vực khác nhau để hỗ trợ giám sát, điều phối giao thông Mặc dù các ứng dụngđiều hướng (ví dụ, Google Map [2] và Apple Map [1]) đã được áp dụng rộng rãi để thuthập dấu vết xe và cung cấp thông tin giao thông thời gian thực, một số khu vực địa lý(như khu dân cư, trường đại học, ) có thể không đủ dữ liệu vì các lái xe trong các khuvực này không bật ứng dụng dẫn đường của họ một cách thường xuyên/đầy đủ Trongnhững trường hợp này, người đi bộ có thể tìm hiểu các xe hơi tiếp cận họ và cung cấp dữliệu giao thông bổ sung chưa có trước đó Với những dữ liệu bổ sung này, chúng ta có thểđánh giá tốt hơn tình trạng giao thông trong khu phố của mình, chẳng hạn như bên ngoàibưu điện hoặc cửa hàng tạp hóa Thứ ba, khả năng phát hiện những chiếc xe tới cũng cóthể tăng cường cho các ứng dụng/trò chơi thực tế ảo (AR) bằng cách làm phong phú cácbản đồ của chúng - ví dụ như đánh dấu vị trí như 'có thể đi bộ-walkable' hoặc 'có thể truycập-accessible' trên bản đồ Pokemon Go Cuối cùng, với sự trợ giúp của kỹ thuật họcnày, điện thoại thông minh có thể thông báo cho người dùng khiếm thính thông qua rungđộng trực tiếp hoặc các chương trình cảnh báo khác trên thiết bị đeo có kết nối
Hình 1 Auto++ phát hiện xe tiếp cận sử dụng dữ liệu âm thanh được ghi lại bởi
điện thoại thông minh Khả năng này cho phép các ứng dụng như cảnh báo người dùng
bị phân tâm (có thể thông qua âm thanh hoặc rung động) Lưu ý rằng phần ứng dụng
như cảnh báo người dùng không phải là một phần của Auto++.
Trang 3Trên thực tế, đã có những nghiên cứu về phát hiện xe hơi trong các cộng đồng khác.
Ví dụ, các giải pháp dựa trên Giao tiếp tầm ngắn (Dedicated Short-RangeCommunications - DSRC) đã được đề xuất và nghiên cứu [36, 38], sử dụng một kênhradio đặc biệt để thiết lập kết nối hai chiều giữa một chiếc xe và những người đang đi bộgần đó Tuy nhiên, những giải pháp như vậy đòi hỏi phải có các modules phần cứng cho
cả chiếc xe và các smartphones, điều này khá khó để cung cấp giải pháp sẵn có ngay lậptức Các kỹ thuật dựa trên thị giác máy tính cũng đã được nghiên cứu, chẳng hạn nhưtrong các nghiên cứu [27, 34], phát hiện các phương tiện qua hình ảnh chụp được bởicamera của smartphones Tuy nhiên, bất lợi của các giải pháp như vậy xuất phát từ nhiềuyếu tố, bao gồm yêu cầu về CPU cao trên mức cần thiết cho việc nhận dạng xe trong thờigian thực, cũng như bắt buộc phải hướng camera trực tiếp vào đối tượng, vv
Trong bài báo này, chúng tôi đề xuất một hệ thống, được gọi là Auto ++, phát hiệnchính xác các loại xe tiếp cận bằng cách xử lý luồng âm thanh thời gian thực trực tiếp thuđược bằng micrô điện thoại thông minh có sẵn mà không cần đào tạo trước hoặc hỗ trợ
cơ sở hạ tầng bổ sung Auto++ không có những thiếu sót của hệ thống dựa trên sóngngắn hoặc dựa trên thị giác; Ngoài ra, nó còn mang lại nhiều lợi ích rõ ràng: (1) nó làkhép kín và không cần bất kỳ hỗ trợ phần cứng nào; (2) áp dụng các kỹ thuật phân loạihoàn toàn không được giám sát và không cần đào tạo trước để hệ thống vận hành; (3)chính xác và có tỷ lệ sai lệch thấp; và (4) nó mạnh mẽ vì nó hoạt động với các loại xe xehơi, đường xá và tiếng ồn môi trường khác nhau Thách thức chính mà chúng ta phải đốimặt là do các đặc tính của tiếng xe Động cơ ngày nay đang ngày càng trở nên im lặng,
và những âm thanh cảm nhận được tạo ra chủ yếu là do ma sát lốp xe Tiếng ồn của lốp
xe này thiếu cả cấu trúc thời gian và tần số có thể phân biệt được Do đó, nhiều kỹ thuật
âm thanh phổ biến như Doppler Shift [8] hoặc các tính năng như MFCC [40] không thểđược áp dụng trong hệ thống của chúng tôi Trong nghiên cứu này, chúng tôi thiết lậpmột tính năng mới có thể phân biệt giữa âm thanh xe hơi và các âm thanh môi trườngkhác Tính năng này là thành phần tần số cực đại vượt ngưỡng năng lượng; khi một chiếc
xe di chuyển gần người sử dụng, tần số này liên tục tăng lên Thông qua phát hiện cạnh,chúng tôi có thể trích xuất mạnh mẽ tính năng này từ quang phổ của tín hiệu âm thanh.Tính năng của âm thanh xe hơi không chỉ là thách thức cho việc phát hiện xe mà nócòn tạo cơ hội cho thuật toán phát hiện của chúng tôi hoạt động trên nhiều loại xe và loạiđường khác nhau - tiếng ồn của lốp xe hơi khác nhau dường như giống nhau Khi hệthống phát hiện ra một chiếc xe, chúng tôi có thể ước tính hướng lái của nó bằng cách sử
Trang 4dụng hàm tương quan chéo giữa các luồng âm thanh từ hai micro (nhiều điện thoại thôngminh hiện nay có micrô kép) Chúng tôi cũng có thể phân cụm phát hiện trong một thờigian ngắn để đếm những chiếc xe xung quanh người sử dụng.
Chúng tôi triển khai Auto++ trên nền tảng Android và thu thập 330 phút dữ liệu âmthanh từ điện thoại thông minh trong 14 tháng Đánh giá của chúng tôi bao gồm 7 loại xebao gồm các loại xe xe hơi phổ dụng trên các đường cao tốc của Hoa Kỳ, bao gồm SUV,sedan cỡ trung, xe thể thao, xe nhỏ gọn và xe điện Âm thanh được ghi bằng Auto ++trong một loạt các kịch bản ngoài trời khác nhau, từ bãi đỗ xe yên tĩnh, đến trung tâmmua sắm ngoài trời ồn ào trong giờ hoạt động Kết quả của chúng tôi cho thấy rằng Auto++ mạnh mẽ trên các loại xe khác nhau và các loại tiếng ồn môi trường khác nhau Cụthể, chúng tôi chứng minh rằng chúng tôi có thể phát hiện được 91% số xe hơi kể cả khichúng cách xa người sử dụng hơn 4 giây Trung bình, hệ thống của chúng tôi có thể pháthiện xe hơi khi nó ở cách xa 5,7 giây (trong khi kế hoạch đặt ra là có thể phát hiện ra xehơi trong 2,4 giây) Chúng tôi lưu ý rằng Auto++ cũng có thể phát hiện xe điện khi chúng
ở cách xa 5,9 giây với độ chính xác 100% Cuối cùng, chúng tôi có thể ước tính phươnghướng lái xe với tỷ lệ thành công trung bình là 84%
2 MỤC TIÊU VÀ THÁCH THỨC (MOTIVATION AND CHALLENGES)
Trong phần này, đầu tiên chúng tôi trình bày các giả định về động cơ và hệ thống.Sau đó, chúng tôi thảo luận một số thách thức phát sinh do đặc tính tín hiệu âm thanh xehơi và các giới hạn của nền tảng phần cứng cơ bản
2.1 Mục tiêu và giả định Hệ thống (Motivation and System Assumptions)
Auto++ thực hiện ba nhiệm vụ sau trong thời gian thực: (1) phát hiện xe - có haykhông một chiếc xe đang đến gần người sử dụng, (2) theo dõi xe - hướng của nó đến hay
đi, và (3) đếm xe - bao nhiêu xe hơi đang đến hay đi qua người dùng trong một cửa sổthời gian nhất định Nó thực hiện các nhiệm vụ này bằng cách phân tích tín hiệu âmthanh thu được bằng micro tích hợp Khả năng trả lời những câu hỏi này có thể cho phépmột số ứng dụng mới Ví dụ: chúng tôi có thể cảnh báo người đi bộ bị phân tâm (thôngqua âm thanh, rung động, v.v ); chúng tôi có thể thu thập dữ liệu lưu lượng truy cậpđược tinh vi từ điện thoại thông minh cho người đi bộ; chúng ta có thể nâng cao công cụgia tăng thực tế hoặc các trò chơi; chúng tôi có thể thông báo thêm cho người dùngkhiếm thính với thông tin ngữ cảnh bên lề đường xung quanh
Trong hệ thống của chúng tôi, chúng tôi giả định rằng người dùng mang một thiết bị
di động được trang bị một hoặc hai micro Ngày nay, tất cả điện thoại thông minh và máy
Trang 5tính bảng đều có ít nhất một micrô, và một số có hai micro, chẳng hạn như Google Nexus
6 và Nexus 6P Sau đó, chúng tôi giả định rằng micro có độ nhạy tương tự ở mọi hướng.Ngoài ra, chúng tôi giả định rằng điện thoại thông minh được giữ trong tay bởi ngườidùng, hoặc trong túi / túi với tai nghe kết nối Cuối cùng, chúng tôi giả định rằng điệnthoại thông minh có dịch vụ định hướng để Auto ++ có thể tính được hướng tương đốicủa điện thoại thông minh đối với đường
2.2 Background on Acoustic Signal Processing (nền tảng về xử lý tín hiệu âm thanh)
Mức áp suất âm thanh (SPL) là dạng trực tiếp của một tín hiệu âm thanh được đo
bằng microphone và mô tả độ lệch áp suất địa phương do sóng âm gây ra
Độ chênh lệch Thời gian đến (TDoA) [13] cung cấp một phép đo vị trí của nguồn
âm thanh Bằng cách tính toán Hàm tương quan chéo (Crosscorrelation Function CCF), Độ chênh lệch xuyên kênh (Inter-channel Phase Difference - IPD) (là sự khác biệtgiữa các kênh liên tiếp) hoặc Hàm ước lượng hợp lý cực đại (Maximum LikelihoodFunction) [6,23,39] của tín hiệu thu được từ các micrô khác nhau, có thể ước tính vị trí
-có thể của nguồn âm thanh
Với ba micro, vị trí chính xác của nguồn âm thanh có thể được ước lượng thông quaphép đo tam giác Do hạn chế của điện thoại thông minh ngày nay, chúng tôi chỉ có thể
sử dụng hai micrô để suy ra hướng âm thanh
Chuyển đổi Fourier rời rạc (Short-Time Discrete Fourier Transform - STDFT)
được sử dụng để phân chia một tín hiệu dài thành các đoạn ngắn hơn với chiều dài bằngnhau và sau đó tính chuyển đổi Fourier Transform rời rạc trên từng phân đoạn STDFTđược sử dụng rộng rãi trong phân tích âm thanh [39] vì nó cho ta thông tin thời gian vàphổ âm của tín hiệu cùng một lúc Nó đặc biệt hữu ích trong việc phát hiện và theo dõimột chiếc xe di chuyển, bởi vì chúng ta có thể quan sát thấy tần số thay đổi như thế nàokhi một chiếc xe đang tiến tới Chúng tôi cung cấp chi tiết về cách chúng tôi có thể ápdụng các tính năng này trong hệ thống của chúng tôi hoặc tại sao chúng tôi không thể ápdụng chúng Cuối cùng, chúng tôi cũng cung cấp một cuộc thảo luận ngắn về các công cụ
xử lý tín hiệu âm thanh thường được sử dụng
Kỹ thuật trích chọn đặc trưng (Mel-frequency cepstral coefficients - MFCC)
xuất phát từ quá trình xử lý tiếng nói, bắt nguồn từ STDFT Trong MFCC, tín hiệu đầutiên được chuyển thành Đáp ứng tần số qua FFT, sau đó được ánh xạ tới thang Mel để
Trang 6tính các hệ số Vì nguồn âm thanh của chúng tôi không phải là tiếng nói nên MFCCkhông cần cung cấp thêm thông tin cho tiếng ồn ma sát của bánh xe so với FFT.
Doppler Shift là sự thay đổi tần số của sóng tại máy thu khi nguồn di chuyển,
thường được sử dụng trong việc định vị nguồn âm thanh [16, 20] Việc sử dụng sự dịchchuyển Doppler đòi hỏi rằng tín hiệu có một hoặc nhiều dải tần số mà năng lượng tậptrung Tuy nhiên, tín hiệu âm thanh của xe hơi không biểu lộ sự phân bố năng lượng lệchnhư vậy, do đó chúng ta không thể sử dụng Doppler để phát hiện hoặc theo dõi một chiếc
Thiếu sự Hội tụ năng lượng của các tần số: Nhiều tín hiệu âm thanh có tập trung
năng lượng khác biệt trên các tần số khác nhau, chẳng hạn như trong những nghiên cứutrong các tài liệu [15,39] Trong các trường hợp như vậy (minh họa trong hình 2 (a) (b)(c)), chúng ta có thể tập trung vào phát hiện năng lượng trên những tần số đó để phát hiện
sự hiện diện của nguồn âm thanh Để định vị các nguồn âm thanh như vậy, góc tới có thể
dễ dàng tính được qua Sự khác biệt giữa các kênh liên tiếp (Độ lệch xuyên kênh) [39],hoặc Dịch chuyển Doppler [8] có thể được áp dụng để ước tính khoảng cách giữa nguồn
âm thanh và thiết bị Tuy nhiên, âm thanh của một chiếc xe không bao gồm tập trungnăng lượng rõ ràng ở bất kỳ tần số cụ thể nào Ví dụ, hình 2 (d) mô tả một kịch bản khimột chiếc xe đang hướng tới người sử dụng ở tốc độ 30 km/h trên một con đường nhựa.Năng lượng của nó chủ yếu tập trung ở dải tần số thấp, cũng giống như tín hiệu không có
xe (như thể hiện trong hình 2 (e)), do đó đòi hỏi phải có các kỹ thuật khác
Trang 7Hình 2 (a) Một tín hiệu tiếng nói điển hình gồm một hoặc nhiều dải tần số được
tập trung năng lượng âm (b) Một quang phổ của âm thanh mở và đóng cửa (c) Một phổ
âm thanh bước chân của con người (d) Một phổ âm thanh của tín hiệu âm thanh cửa ngoài có chứa tập trung năng lượng ổn định ở dải tần số thấp và không đổi trong miền thời gian (e) Khi một chiếc xe đang hướng tới người sử dụng ở tốc độ 30 km/h trên đường nhựa, tín hiệu âm thanh của nó không chứa tập trung năng lượng rõ ràng trên các dải tần số khác nhau)
Thiếu cấu trúc thời gian: Nhiều nghiên cứu dựa vào các đặc tính thời gian của tín
hiệu âm thanh để định vị nguồn âm thanh, chẳng hạn như mức đỉnh áp suất âm thanh(SPL) [19, 23], thời gian phát ra âm thanh [23] Tuy nhiên, chúng tôi không xem xét mộtcách chắc chắn các đặc tính thời gian trong tín hiệu âm thanh xe hơi của chúng tôi do bảnchất giống như tiếng ồn của nó
Giới hạn Hệ thống: Chúng tôi xem xét chạy Auto ++ trên các thiết bị di động và
thiết kế hệ thống do đó bị giới hạn bởi các tính năng có sẵn trên nền tảng phần cứng, ví
dụ như số lượng micro có thiết bị là bao nhiêu, khoảng cách giữa các micro này ra sao,
độ nhạy của các micro, tần số lấy mẫu tối đa, vv…
Trong nghiên cứu này, chúng tôi đã cẩn thận giải quyết những thách thức này và kếtquả đánh giá của chúng tôi trong Phần 6 cho thấy Auto ++ là chính xác, kịp thời và mạnhmẽ
Trang 83 AUTO++ DESIGN (thiết kế Auto++)
Trong phần này, chúng tôi trình bày chi tiết thiết kế của Auto ++, bao gồm bốn bướcchính: Tiền xử lý, trích chọn đặc trưng, phát hiện xe hơi và ước lượng hướng xe
3.1 tổng quan về Auto++ (Overview of Auto++)
Hình 3 Hệ thống Auto++ bao gồm bốn thành phần sau: (1) tiền xử lý tín hiệu, (2) trích chọn đặc trưng, (3) phát hiện hiện diện của xe, và (4) phát hiện hướng xe Auto++ không yêu cầu bất kỳ quá trình huấn luyện trước cho bất kỳ bước nào trong các thành phần này.
Hình 3 miêu tả tổng quan về Auto ++, bao gồm các thành phần sau:
(1) Tiền xử lý: Trước khi chúng ta có thể sử dụng tín hiệu âm thanh bắt được để
phát hiện, theo dõi hoặc đếm xe hơi, đầu tiên chúng ta cần thực hiện một số tiền xử lý,bao gồm phân đoạn luồng tín hiệu âm thanh liên tục thành các đoạn nhỏ hơn, nhân mỗiđoạn với một hàm cửa sổ phù hợp, và tiến hành xử lý yêu cầu trên mỗi đoạn, chẳng hạnnhư biến đổi Fourier rời rạc (DFT) Các bước này chuẩn bị dữ liệu để xử lý tín hiệu tiếptheo
(2) Trích chọn đặc trưng: Tiếp theo, chúng tôi trích xuất các tính năng có thể
được sử dụng để phát hiện xe hơi Thật không may, chúng tôi thấy rằng những tính năng
Trang 9thường được sử dụng để phát hiện và định vị nguồn âm thanh không phù hợp với hệthống của chúng tôi (đã giải thích trong Phần 2) vì âm thanh xe hơi bị chi phối bởi tiếng
ồn của lốp xe và thiếu các phổ đặc trưng và đặc tính thời gian Trong thành phần côngviệc này, chúng tôi đã đề xuất các tính năng mới độc đáo cho tín hiệu âm thanh xe hơi vàtạo điều kiện phát hiện xe chính xác, kịp thời và nhanh chóng
(3) Phát hiện Hiện diện: Thuật toán phát hiện sự hiện diện của chúng tôi là
không cần giám sát Nó có thể phân biệt thành công giữa các kịch bản liên quan đến mộtchiếc xe tiếp cận và những chiếc không liên quan (với tiếng ồn lớn xung quanh) sớm nhất
có thể
(4) Ước lượng hướng: Thuật toán phát hiện hướng của chúng tôi dựa trên Sự
Chệnh lệch thời gian đến (TDoA) của tín hiệu âm thanh Bằng cách tính toán hàm tươngquan chéo qua tín hiệu từ hai kênh, chúng ta có thể cung cấp một ước lượng định hướngthô của nguồn âm thanh
3.2 Tiền xử lý tín hiệu (Sound Signal Pre-Processing)
Đầu tiên, chúng tôi phân đoạn luồng dữ liệu âm thanh liên tục thành các đoạn có thờilượng bằng nhau, mỗi đoạn được gọi là cửa sổ xử lý Trong hệ thống của chúng tôi, chiềudài cửa sổ điển hình là 0,5 giây, nghĩa là chúng tôi chạy thuật toán phát hiện xe của mìnhmỗi 0,5 giây Tiếp theo, thuật toán phát hiện của chúng tôi thực hiện việc tính toán phépbiến đổi Fourier rời rạc thời gian ngắn (STDFT) của các mẫu âm thanh trong một cửa sổ
xử lý Để làm công việc này, chúng tôi chia một cửa sổ xử lý vào khe có chiều dài bằngnhau, và nhân hàm cửa sổ Hamming với mỗi khe Sau đó chúng tôi thực hiện các biếnđổi Fourier qua mỗi khe để có được các STDFT của cửa sổ chế biến Khoảng thời giankhe quyết định quãng cường độ trong phép tính STDFT của chúng tôi
3.3 Trích chọn đặc tính (Auto++ Feature Extraction)
Tiếp theo, chúng tôi đề xuất tính năng phát hiện xe của chúng tôi và giải quyết cácthách thức độc đáo của tín hiệu âm thanh xe hơi và phương pháp trích chọn đặc tính củachúng tôi cho phép phát hiện sự hiện diện xe chính xác, kịp thời và không cần giám sát
3.3.1 Tần số Top-Right (Top-Right Frequency TRF): Tần suất lớn nhất mà
năng lượng của nó đạt đến ngưỡng nhất định Chúng tôi khám phá tính năng này sau khi
kiểm tra kỹ các kết quả STDFT của tín hiệu âm thanh Hình 4 (a) vẽ kết quả STDFT củatín hiệu âm thanh từ một chiếc Toyota Camry 2007 trong suốt quãng đường 100 mét.Chúng tôi bắt đầu thu thập mẫu âm thanh khi chiếc xe ở cách đó 100 mét và kết thúc ghikhi lái xe qua người dùng Việc ghi âm được thực hiện bằng điện thoại thông minh Nexus
Trang 106 Từ hình này, chúng ta quan sát thấy rằng khi chiếc xe gần người nhận hơn, năng lượngtrên tất cả các thành phần tần số nhanh chóng tăng lên, hình thành một hình dạng giốngquả núi Năng lượng đạt đến mức tối đa khi xe đi ngang qua vị trí của người dùng
Hình 4 (a) Kết quả STDFT của tín hiệu âm thanh được ghi lại khi Toyota Camry
2007 lái xe cách người sử dụng 100 mét so với người sử dụng (b) Hai ảnh chụp nhanh STDFT chụp ở các dấu thời gian khác nhau, trong đó chúng tôi quan sát TRF cao hơn khi chiếc xe gần hơn (c) Dấu vết TRF được trích ra bởi thuật toán dò mờ.
Chúng ta hãy nhìn vào hai bức ảnh chụp STDFT trong Hình 4 (b) Đối với mỗi ảnhchụp STDFT, chúng tôi nhận thấy rằng cường độ của tín hiệu giảm xuống khi chúng ta đi
từ các thành phần tần số thấp đến các thành phần tần số cao hơn Điều này là do cácthành phần tần số cao gặp phải sự mất mát đường dẫn cao hơn Đầu tiên chúng ta chọngiá trị ngưỡng năng lượng cụ thể, ví dụ: - 58dB, sau đó tìm thành phần tần số cao nhất
Trang 11tương ứng với mức cường độ ở trên ngưỡng này Chúng ta xem giá trị tần số này là Tần
số phải, hoặc TRF ngắn, bởi vì nếu chúng ta vẽ một hình chữ nhật có chiều cao được chobởi giá trị ngưỡng cường độ (hình chữ nhật được minh họa bằng màu đỏ ở hình 4 (b)),tần số của góc trên cùng bên phải của hình chữ nhật này là tần suất chúng tôi đang tìmkiếm Khi xe đến gần người sử dụng, giá trị TRF của tín hiệu trở nên cao hơn Nhìnchung, TRF có thể được tính như sau:
Trong đó S (n, f) là công suất của tín hiệu ở tần số f và cửa sổ thời gian n Thuậtngữ S (n, f) là nhỏ hơn ngưỡng cường độ T, và TRF (n) là cực đại f trong số tất cả các tần
số có S (n, f) đạt đến mức cường độ T Chúng tôi tính toán giá trị TRF cho mỗi khe để tạo
ra dấu vết TRF và sử dụng dấu vết TRF làm đặc điểm cho phát hiện xe sau đó
3.3.2 Phát hiện cạnh mờ dựa trên Trích chọn đặc tính (Blurred Edge Detection Based Feature Extraction) Một cách đơn giản để tạo ra dấu vết TRF là áp
dụng một ngưỡng cường độ cố định trên tất cả các khe Thực hiện phương pháp này trênthực tế rất khó khăn vì nó rất khó để lựa chọn ngưỡng công suất phù hợp hoạt động trên
xe xe hơi và điều kiện đường xá Hơn nữa, áp dụng một ngưỡng cường độ duy nhấtkhông mạnh mẽ trong các môi trường thực; trong môi trường ngoài trời, các hoạt độngtrong môi trường (ví dụ như chim hót, bước chân, v.v ) có thể dễ dàng dẫn đến các tần
số cao mà cường độ vượt quá ngưỡng cường độ Kết quả là dấu vết TRF kết quả sẽkhông trơn, thậm chí đôi khi không liên tục
Để giải quyết những thách thức liên quan đến việc trích chọn dấu vết ngưỡng TRF cơbản, chúng tôi tiếp tục phát triển một phương pháp phát hiện cạnh dựa trên phương thứctrích chọn các giá trị TRF từ kết quả STDFT một cách mạnh mẽ và hiệu quả Như thểhiện trong hình 4 (a), khi lái xe gần người sử dụng hơn, chiếc xe sẽ phát ra tín hiệu âmthanh có độ dốc liên tục, mờ Cạnh của độ dốc này là dấu vết của TRF của chiếc xe Sau
đó, chúng tôi sử dụng một Bộ phát hiện cạnh mờ (Blurred Edge Detector BED) để tríchxuất cạnh này, mạnh hơn phương pháp tiếp cận dựa trên ngưỡng cường độ
Cách tiếp cận chiết xuất TRF dựa trên BED của chúng ta dựa vào thông tin quangphổ và thời gian để xác định độ dốc cường độ của quang phổ Những gradient này chứađường TRF mong muốn Cụ thể, chúng tôi sử dụng một máy dò cạnh Canny [5], một kỹthuật được sử dụng rộng rãi, trong Auto ++ Nó bao gồm các bước sau: (1) Chúng tôi loại
bỏ các thành phần tần số có cường độ dưới ngưỡng bằng cách đặt chúng xuống -100 dB.(2) Chúng tôi áp dụng một bộ lọc Gaussian để làm phẳng các chấm và đường ồn (3)
Trang 12Chúng tôi tính toán gradient cường độ của phổ âm thanh để có được phác thảo của vùng
có sự gia tăng cường độ thích hợp (4) Chúng tôi áp dụng loại bỏ tối đa nhiễu để làm sạchvùng hình thành các cạnh (5) Chúng tôi theo dõi các cạnh chính bằng cách loại bỏ tất cảcác cạnh yếu và không kết nối với các cạnh mạnh Sau khi tìm thấy cạnh (thể hiện tronghình 4 (c)), chúng tôi điền vào các điểm còn thiếu trên cạnh với giá trị liền kề trước đó đểtạo thành một chuỗi liên tiếp Chúng tôi gọi đây là dấu vết TRF Chúng tôi tiến hành dò tìm cạnh đó ở mức độ chi tiết của cửa sổ xử lý Mỗi cửa sổ xử lý bao gồm nhiều khe;chúng tôi phát hiện ra cạnh bên trong mỗi cửa sổ và sử dụng trung bình di chuyển trên
Trong một số trường hợp, điều quan trọng là phải tìm ra bao nhiêu chiếc xe xungquanh người dùng Để có được số lượng xe, chúng tôi hợp nhất cửa sổ xe hơi hiện tạitrong một khoảng thời gian ngắn để tránh đếm cùng một chiếc xe nhiều lần
Cuối cùng, chúng tôi lưu ý rằng chương trình phát hiện của chúng tôi có thể làm việcvới các tính năng khác Trong đánh giá của chúng tôi (Phần 6), chúng tôi cũng đã sửdụng mức độ áp suất âm thanh (SPL) trong thuật toán phát hiện của chúng tôi
Trang 13Hình 5 (a) Các giá trị TRF trong cửa sổ hiện tại của xe hơi thường có các mẫu
khác nhau từ những cửa sổ trống rỗng có tiếng ồn xung quanh ngắn Trong trường hợp đầu, giá trị TRF thường tăng liên tục trong khi trường hợp thứ hai, giá trị TRF tăng lần đầu tiên và sau đó giảm xuống (b) Giá trị TDoA khi chiếc xe lại gần hơn với người sử dụng Mũi tên màu đỏ đánh dấu thời gian khi chiếc xe được phát hiện trong K cửa sổ liên tiếp, trong khi mũi tên màu xanh đánh dấu thời gian khi xe đi qua smartphone (c) Ví
dụ đường hyperbolas chúng ta thu được để ước lượng hướng Đường Hyperbola màu đỏ liên tục trên mặt phẳng trái cho biết rằng một chiếc xe đang lái xe từ phía bên trái.
3.5 Ước lượng định hướng xe hơi không giám sát (Unsupervised Car Direction Estimation)
Sau khi phát hiện xe đang tiến gần, chúng tôi ước tính hướng lái xe Chúng tôi cốgắng làm như vậy bằng cách đo sự khác biệt về thời gian đến (TDoA) giữa các tín hiệu
âm thanh thu được bởi micrô (nếu có nhiều thiết bị di động) Thông thường, TDoA đãđược sử dụng để cung cấp thông tin vị trí chính xác cho nguồn âm thanh [8] Để tính toántín hiệu TDoA, chúng ta áp dụng hàm tương quan chéo (CCF) trên hai tín hiệu f (τ) và д(τ) để tính toán độ trễ giữa chúng:
Trong đó f * biểu thị phức hợp phức của f và τ là độ trễ Giá trị t tương ứng củađỉnh cao nhất là độ trễ ước tính giữa hai kênh.Tuy nhiên, khi áp dụng phương pháp trêntrên điện thoại thông minh trong vấn đề của chúng tôi, chúng ta phải đối mặt với nhữngkhó khăn sau:
1) Các phép đo SPL không ổn định: Tính toán TDoA dựa trên các giá trị SPL từ cảhai kênh Tuy nhiên, do bản thân SPL có thể dễ bị ảnh hưởng bởi tiếng ồn xung quanh,đặc biệt khi nguồn âm thanh ở xa người nhận (như trong trường hợp của chúng tôi), cáckết quả tương quan chéo của hai kênh thường không chính xác
Trang 142) Số lượng Microphone hạn chế: Tính toán chính xác góc yêu cầu ít nhất bamicrô - chúng tôi có thể tính toán bằng ba giá trị TDoA Tuy nhiên, hầu hết các điện thoạithông minh sẵn có được trang bị một hoặc hai micro Với hai micro nhúng, chúng tôi chỉ
có thể tính một giá trị TDoA
3) Tốc độ lấy mẫu thấp: Độ phân giải TDoA có liên quan rất lớn đến tốc độ lấymẫu của thiết bị ghi Tỷ lệ lấy mẫu của điện thoại thông minh không được cao hơn44Khz, điều này không đủ cho độ phân giải TDoA cao
4) Khoảng cách nhỏ giữa hai micro: Khoảng cách d (như thể hiện trong hình 5 (c))giữa hai micrô xác định độ chi tiết của TDoA có thể phân biệt cũng như khoảng cáchphát hiện có hiệu quả Trên điện thoại thông minh, khoảng cách giữa các micrô thườngquá nhỏ để có độ phân giải đủ
Để giải quyết thách thức của các phép đo SPL không ổn định, chúng tôi đề xuất chỉbắt đầu tính toán TDoA khi chúng tôi đã phát hiện cùng một chiếc xe cho K cửa sổ liêntiếp Tại thời điểm này, các phép đo SPL ổn định hơn, dẫn đến kết quả chính xác hơn vềTDoA và định hướng
Hình 5 (b) cho thấy giá trị TDoA thể hiện cho sự xuất hiện của chiếc xe thay đổi nhưthế nào trong khi người sử dụng vẫn đứng yên trên vỉa hè Ngay sau khi xe đã được pháthiện trong 4 cửa sổ liên tiếp vào ngày giây thứ 17th (được đánh dấu bởi mũi tên màu đỏ),giá trị TDoA trở nên ổn định hơn nhiều so với trước đây Nó vẫn ổn định cho đến giâythứ 21th Trong ví dụ này, chiếc xe đi qua người sử dụng vào giây thứ 22th (được đánhdấu bởi mũi tên màu xanh) Ngay cả khi giá trị TDoA ổn định, giá trị tuyệt đối của nó cóthể không được sử dụng trực tiếp để định vị xe, vì nó bị giới hạn bởi nhiều thông số hìnhhọc như góc và khoảng cách giữa điện thoại thông minh và đường Thay vào đó, chúngtôi chỉ xem xét dấu hiệu của giá trị TDoA hợp lệ đầu tiên và ước tính từ hướng mà chiếc
xe đang lái xe dựa trên dấu hiệu
Hình 5 (c) minh họa một số hình hyperbol có thể được xác định bởi các giá trị TDoAđược đo Khi chúng ta có giá trị TDoA âm, nó cho thấy nguồn âm thanh nằm ở mộthyperbola ở phía bên trái (được đánh dấu bằng màu đỏ) Đó là, một chiếc xe hơi xuấtphát từ phía trên của điện thoại thông minh
Cuối cùng, chúng tôi lưu ý rằng, khi các ứng dụng yêu cầu độ phân giải và địnhhướng độ phân giải TDoA cao, chúng tôi có thể giải quyết các thách thức liên quan đếnphần cứng 2), 3) và 4) bằng cách kết nối micro ngoài với các thông số kỹ thuật cao hơncho điện thoại thông minh
Trang 154 TÍNH ĐÚNG LÚC, TÍNH CHÍNH XÁC VÀ TÍNH KHẢ DỤNG (SYSTEM’S TIMELINESS, ACCURACY AND USABILITY)
Đối với hệ thống cảm biến được sử dụng trong Auto++, mối quan tâm về (1) sự pháthiện sự kiện muộn là khá tự nhiên, đồng thời phát hiện sự kiện không chính xác (2), và(2) có thông báo hoặc cảnh báo quá mức ngay cả khi phát hiện là kịp thời và chính xác.Mặc dù hai mối quan tâm đầu tiên liên quan chặt chẽ đến hiệu suất của hệ thống, mốiquan tâm thứ ba là tập trung vào khả năng sử dụng của nó Ở đây, chúng tôi muốn thảoluận làm thế nào chúng ta có thể giải quyết những mối quan tâm này để áp dụng các yêucầu ứng dụng khác nhau
Nhìn chung, chúng tôi phân loại các ứng dụng tiềm năng thành hai lớp - cảm nhậntức thì và nhật ký hàng ngày Trong lớp học đầu tiên, mục tiêu chính của các ứng dụngnày là để phát hiện sự hiện diện của một chiếc xe bất cứ khi nào nó tiếp cận người sửdụng Do đó, yêu cầu kịp thời là rất quan trọng, tức là chúng tôi muốn phát hiện ra chiếc
xe càng sớm càng tốt để người dùng có đủ thời gian để phản ứng Tuy nhiên, khi một hệthống có thể nắm bắt âm thanh xe hơi khi nó ở xa, nó có thể gặp tỷ lệ phán đoán sai caohơn vì nó nhạy cảm đối với tín hiệu với tỷ số tín hiệu nhiễu (Signal-to-Noise Ratio SNR)thấp Để hiểu được sự cân bằng giữa khoảng cách phát hiện và tỷ lệ phán đoán sai, chúngtôi đã tiến hành các thí nghiệm bằng cách thay đổi kích cỡ cửa sổ xử lý (xem Phần 6.1).Mặt khác, các ứng dụng lớp thứ hai đang tập trung vào việc ghi lại sự hiện diện của xehơi trong vùng lân cận của người sử dụng để cung cấp thêm thông tin giao thông Cácứng dụng này không yêu cầu khoảng thời gian phát hiện miễn là các phần trước đó, do đóchúng ta có thể thiết lập các thông số hệ thống đối với tỷ lệ phát hiện sai thấp hơn
Đối với các ứng dụng trong lớp cảm ứng tức thì, ngay cả khi việc phát hiện là kịpthời gian và chính xác, tuy nhiên, nó vẫn rất phiền toái nếu có thông báo quá mức Đểgiải quyết tính khả dụng của hệ thống, chúng tôi cho rằng Auto++ nên tách riêng bộ cảmbiến và bộ thông báo sự kiện/cập nhật, và rằng các module thông báo/cập nhật này nênđược thiết kế để có thể thay đổi dựa trên bối cảnh chính xác của người dùng
Tần suất thông báo/cập nhật sự kiện có thể cần được tinh chỉnh, khi chúng ta sử dụngcác ứng dụng khác nhau trong các tình huống khác nhau –ví dụ, người dùng có thể thíchcảnh báo ít hơn thường xuyên về những chiếc xe đến khi đi bộ trong khu vực thành phốđông đúc trong giờ cao điểm, so với đi bộ trên một đường phố ngoại ô trong thời giancao điểm; các trò chơi như Pokemon Go có thể cần cập nhật thường xuyên hơn các ứngdụng về sức khoẻ như Fitbit
Trang 16Với quan điểm như trên, chúng tôi thiết kế Auto++ sao cho nó tự động điều chỉnh tầnsuất thông báo/cập nhật như mong muốn Thứ nhất, bằng cách cung cấp cho người dùngkhả năng thiết lập cấu hình cài đặt ưa thích của họ, chúng tôi chỉ có thể kích hoạt Auto++trong các tình huống cụ thể - ví dụ khi người dùng sắp đi vào giao lộ hoặc đi bộ trên vỉa
hè ở khu vực ít đông đúc hơn Sử dụng các công nghệ hiện có như Hệ thống ranh giới địa
lý (geo-fencing) [29], hệ thống có thể phát hiện ra người sử dụng đang ở trong tìnhhuống như thế và sau đó kích hoạt / hủy kích hoạt dò tìm xe phù hợp
Ngoài các cài đặt do người dùng chỉ định, Auto ++ cũng có thể lọc thông báo sự kiệnkhông cần thiết/cập nhật thông qua cảm biến ngữ cảnh chi tiết Ví dụ: báo cáo sẽ chỉđược gửi đi nếu một chiếc xe tiếp cận được phát hiện trong khi người dùng đang đi dọctheo cùng một con đường Những cảm biến như vậy có thể thu được bằng cách sử dụngthêm các cảm biến khác trong điện thoại, hệ thống GPS, vv…
5 TRIỂN KHAI AUTO++ TRÊN ANDROID (ANDROID IMPLEMENTATION OF AUTO++)
Chúng tôi đã triển khai Auto ++ bằng thư viện Java và OpenCV trên nền tảngAndroid Âm thanh thô được ghi ở tần số 44 KHz, với điều chế xung 16 bit (PCM) Đểđạt được xử lý thời gian thực và cập nhật sự kiện, chúng tôi đã tối ưu hóa mã của Auto ++ để cho phép các luồng đồng thời để tránh bị trễ khi cảm biến/recording hay xử lý tínhiệu Như trong Hình 6, luồng Ghi ghi xử lý việc thu thập dữ liệu từ micro và đưa bộđệm xử lý, trong khi luồng Máy tính xử lý dữ liệu đệm và gửi kết quả (giao diện ngườidùng và các ứng dụng) (API)
Hình 6 Sơ đồ triển khai hệ thống Auto++ trên nền tảng Android