Luận án Kỹ thuật xử lý vùng quan sát và phát hiện bất thường của các đối tượng trong hệ thống camera giám sát

LỜI CAM ĐOAN . 3

LỜI CẢM ƠN . 4

MỤC LỤC . 5

DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT. 8

DANH MỤC CÁC BẢNG . 9

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ. 10

MỞ ĐẦU . 12

CHƯƠNG 1: TỔNG QUAN VỀ CHUYỂN TIẾP VÀ PHÁT HIỆN BẤT

THƯỜNG TRONG CÁC HỆ THỐNG CAMERA GIÁM SÁT

. 20

1.1. Hệ thống camera giám sát tự động . 20

1.1.1. Giới thiệu . 20

1.1.2. Các vấn đề cơ bản trong hệ thống camera giám sát tự động. 23

1.2. Chuyển tiếp camera và phát hiện bất thường. 27

1.2.1. Theo vết đối tượng với với nhiều camera. 27

1.2.2. Bài toán chuyển tiếp camera. 34

1.2.3. Phát hiện bất thường trong giám sát video . 36

1.3. Kết luận và vấn đề nghiên cứu. 41

CHƯƠNG 2: MỘT SỐ KỸ THUẬT XỬ LÝ VÙNG QUAN SÁT TRONG

CHUYỂN TIẾP CAMERA . 43

2.1. Giới thiệu . 43

pdf126 trang | Chia sẻ: mimhthuy20 | Lượt xem: 549 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận án Kỹ thuật xử lý vùng quan sát và phát hiện bất thường của các đối tượng trong hệ thống camera giám sát, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
đường nối hai điểm giao cắt là đường chia cắt mà mỗi đa giác sau khi chia có số cạnh nhỏ nhất (Hình 2.4). Chứng minh: Gọi hai điểm giao cắt của hai đa giác A, B là Ls, Le. Việc phân chia hai đa giác A, B sẽ cho ta hai đa giác mới tương ứng là phần riêng của các đa giác và một phần trong phần chung của hai đa giác. Đoạn nối giữa Ls và Le chia phần chung giữa A và B thành hai phần. Khi đó, với mỗi đa giác kết quả sau khi chia, rõ ràng đường đi từ Ls đến Le là ít cạnh nhất khi nó là đoạn nối trực tiếp từ Ls đến Le. Do đó, tương ứng với nó, đa giác kết quả sau khi chia sẽ có số cạnh ít nhất. 50 (a) (b) Hình 2.4. Chia cắt phần giao giữa hai đa giác 2.2.3.2. Phân vùng quan sát của hệ thống giám sát gồm nhiều camera Với khu vực giám sát đã triển khai có n camera tĩnh, cùng với thông tin về vùng quan sát của mỗi camera, các đa giác quan sát của các camera chồng chéo lên nhau và thuộc loại giao cắt đơn. Thực hiện phân vùng giám sát của hệ thống thành tập các đa giác quan sát của từng camera, tập các đa giác này không giao nhau.  Ý tưởng Tiến hành đánh số các camera theo thứ tự liên tiếp khi duyệt theo đường biên của khu vực giám sát. Xuất phát từ đa giác quan sát của camera thứ nhất, bổ sung dần vùng quan sát của camera tiếp theo, xét sự giao nhau của đa giác này với các đa giác đã xét trước đó. Như vậy, tại lượt thứ i, xét sự giao nhau của đa giác quan sát của camera i với i-1 camera trước đó: (1, i); (2, i);...; (i -1; i). Thực hiện phân vùng quan sát của từng cặp camera (1, i); (2, i);...; (i-1; i) theo nội dung đã trình bày ở phần trên. Trước hết ta xây dựng hàm thực hiện việc phân vùng giao nhau của hai đa giác. Hàm partitionTwoPolygon: Phân vùng hai đa giác giao nhau sao cho số cạnh của mỗi đa giác sau khi chia là nhỏ nhất. 51 Hàm: partitionTwoPolygon (A, B: polygon) Vào: A=(A[1], A[2], ..., A[n]); B=(B[1], B[2], ..., B[m]); trong đó A[i], B[j] là các đỉnh. Ra: hai đa giác X và Y, thỏa mãn: 𝐴 ∪ 𝐵 = 𝑋 ∪ 𝑌 trong đó 𝐴 ∪ 𝑋 ∩ 𝑌 = ∅; 𝑋 ⊆ 𝐴; 𝑌 ⊆ 𝐵; Phương pháp: Tìm hiệu P(P[1], P[2], ..., P[t]) = A\B. Tìm hai giao điểm P[h], P[k] (h< k< t) của mỗi cặp cạnh trong phần giao của A và B. For i = 1 to h 𝑋 = 𝑋 ∪ 𝑃[𝑖]; For i = k to t 𝑋 = 𝑋 ∪ 𝑃[𝑖]; Y = B – X; A = X; B = Y  Thuật toán PartitionFOV Vào: Vùng quan sát hệ thống 𝑃 = {𝑃[1], 𝑃[2], . . , 𝑃[𝑛]} (với n nguyên dương) 𝑃[𝑖] = {𝑉1, 𝑉2, . . 𝑉𝑡}, với Vk (xk,yk) là đỉnh của đa giác có tọa độ (xk, yk), các đỉnh được sắp theo thứ tự kim đồng hồ. Ra: Q=(Q[1], Q[2], ..., Q[n]) thỏa mãn: 𝑃 = ⋃ 𝑄[𝑖]𝑛𝑖=1 ; trong đó: Q[i] ∩ Q[j] = ∅ (∀𝑖, 𝑗 ∈ 1. . 𝑛) và Q[i] ∈ P[i](∀𝑖 ∈ 1. . 𝑛). Phương pháp: Nhập thông tin vùng quan sát của n camera: P[i] (i=1..n) 52 Q[] = {0}; Q[1]=P[1]; i=1; j=1; While (i  n){ i=i+1; T=P[i]; k=1; While (k<=j){ if(Q[k] giao với T) partitionTwoPolygon(Q[k],T); k=k+1;} j=j+1; Q[j]=T;}  Độ phức tạp tính toán: Có thể thấy rằng, với một vùng giám sát có n camera, tại lượt thứ i ta cần thực hiện (i – 1) hàm phân vùng partitionTwoPolygon. Tổng quát, số lần thực hiện: 2 )1(...21 2n n  Do vậy, độ phức tạp của thuật toán PartitionFOV là O(n2). 2.2.4. Thực nghiệm Luận án đã tiến hành cài đặt thử nghiệm thuật toán đề xuất trên trong môi trường Matlab R2010a. Mục đích của thực nghiệm là nhằm đưa ra một cách chia vùng quan sát của hệ thống camera đã triển khai thành các vùng con không giao cắt, mỗi vùng con này sẽ được giao cho một camera quản lý. Hình 2.5 minh họa kết quả thực hiện thuật toán với hệ thống được giám sát bởi 4 camera (Hình 2.5.a), vùng quan sát của hệ thống camera đã được chia 53 thành các vùng con không giao nhau (Hình 2.5.b), mỗi vùng con này được giao cho một camera quản lý. Việc chuyển đổi giữa các camera khi đối tượng di chuyển từ camera này tới camera khác giờ đây chỉ cần xét khi đối tượng đi qua đường ranh giới giữa chúng. (a) Trước khi phân vùng (b) Sau khi phân vùng Hình 2.5. Phân chia vùng quan sát của hệ thống camera giám sát Năm 2006, Erdem và Sclaroff [28] đã đưa ra một phương pháp cho phép xác định vị trí các camera cho một sơ đồ mặt bằng giám sát đảm bảo được vùng yêu cầu bao phủ cùng với mức độ chồng chéo vùng quan sát và giải quyết việc chuyển tiếp giữa các camera. Năm 2010, Yi Yao [113] đã thực nghiệm triển khai thuật toán của Erdem [28] trên sơ đồ mặt bằng giám sát như hình 2.6.a. Thực nghiệm được thực hiện với đầu vào là các vùng quan sát của hệ thống camera được Yi Yao [113] triển khai theo thuật toán của Erdem [28] (Hình 2.6.b). Kết quả thực nghiệm (Hình 2.6.d) được đánh giá thông qua việc so sánh số lần tính toán va chạm với đường biên khi đối tượng di chuyển vào các vùng giao nhau của các đa giác quan sát. 54 a) Sơ đồ mặt bằng giám sát b) Sơ đồ bố trí của Yi Yao [113] c) Các vùng chồng lấn và số cạnh của đa giác theo sơ đồ bố trí của Yi Yao d) Kết quả thực hiện theo thuật toán đề xuất Hình 2.6. Phân vùng giám sát cho các camera của hệ thống giám sát Trong phương án triển khai của Yi Yao [113], số vùng chồng lấn giữa hai camera là 5 với tổng số cạnh của các đa giác chồng lấn là 28, số vùng chồng lấn giữa ba camera là 2 với tổng số cạnh là 7. Có thể thấy rằng trong các trường hợp trên, khi một đối tượng di chuyển trong các khu vực chồng lấn giữa hai camera trong trường hợp nhiều nhất phải xét sự va chạm của đối tượng tới 8 cạnh của đường biên, hoặc là tối thiểu là 3 đường biên. Trong khi đó với phương án đề xuất thì phần giao nhau đã được phân chia cho từng camera và được giới hạn bởi các đường biên, trong trường hợp này việc xét va chạm của đối tượng với đường biên luôn là một. -15 -10 -5 0 5 10 15 -20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 C1 C2 C4 C3 C6 C5 55 Với kỹ thuật phân vùng như đã đề xuất thì độ bao phủ luôn được đảm bảo cao nhất, đồng thời vùng quan sát được chia thành các đa giác không giao nhau, việc giải quyết bài toán chuyển tiếp camera sẽ thuận lợi hơn rất nhiều khi kết hợp với kỹ thuật đường ranh giới ảo được trình bày trong mục 2.3. Kỹ thuật đề xuất đã được công bố trong Chuyên san của Tạp chí Công nghệ thông tin và Truyền thông năm 2014. 2.3. Chuyển tiếp camera dựa vào đường ranh giới ảo 2.3.1. Đường ranh giới ảo Đường ranh giới ảo (virtual line) thực chất là một đường thẳng được vẽ lên trên mỗi khung hình trong quá trình thao tác với dữ liệu video. Bài toán thông thường được đặt ra đối với đường ranh giới ảo là xác định khi nào đối tượng vượt qua nó, mở rộng hơn là khi nào đối tượng đi vào một vùng hoặc đi ra khỏi vùng được giới hạn bởi đường ranh giới ảo. LeFloch [65] đã sử dụng đường ranh giới ảo vào việc đếm số người ra/vào trong một tòa nhà. Liu Anan và cộng sự [3] đề xuất sử dụng nhóm các đường ranh giới ảo trong việc phát hiện xe tải trong giao thông (Hình 2.7). Hình 2.7. Đường ranh giới ảo 56 Trong quá trình giám sát đối tượng với hệ thống nhiều camera, thời điểm chuyển giao camera là một yếu tố quan trọng để có thể theo dõi đối tượng được liên tục. Chung-Hao Chen [16] dựa vào 3 tiêu chí nhằm xác định thời điểm chuyển tiếp camera: Tình trạng bị che lấp của đối tượng theo dõi; khoảng cách từ đối tượng đến cạnh của FOV camera giám sát; độ phân giải (kích thước) đối tượng được giám sát. Li và Bhanu [70] dựa vào kích thước của đối tượng theo dõi được đo bằng tỷ lệ số lượng điểm ảnh trong khối bao; Vị trí của đối tượng trong vùng quan sát: được tính từ đối tượng đến tâm của mặt phẳng ảnh và tỷ lệ số lượng điểm ảnh của khuôn mặt trên khối bao. Các tiếp cận của họ đều dựa trên việc sử dụng các kỹ thuật xử lý ảnh thao tác với các vùng ảnh của đối tượng chuyển động trong video. Trong phần này, luận án đưa ra một cách tiếp cận khác, với ý tưởng tại vùng giao nhau giữa các camera, thực hiện lập các đường ranh giới ảo nhằm xác định khu vực giám sát của mỗi camera (Hình 2.8), từ đó thời điểm chuyển giao camera được xác định khi đối tượng di chuyển va chạm với đường ranh giới ảo. Hình 2.8. Đường ranh giới ảo và khu vực giám sát của mỗi camera Đường ranh giới ảo 57 Trong thực tế, tốc độ di chuyển của đối tượng và tốc độ thu nhận của camera không phù hợp, do vậy để tránh trường hợp khi đối tượng di chuyển nhanh qua đường ranh giới ảo mà camera chưa bắt kịp, luận án đề xuất thay vì sử dụng một đường ranh giới ảo, ta sẽ dùng một nhóm 3 đường ranh giới ảo (hai đường mở rộng về hai phía của đường ban đầu với khoảng cách dx). Hơn nữa, do hình ảnh thu nhận được ở camera là ảnh 2D từ góc nhìn của camera đó, nên sẽ xuất hiện tình huống đối tượng chưa di chuyển đến đường ranh giới ảo, nhưng ảnh thu nhận lại cho thấy đối tượng đã chạm vào đường ranh giới ảo (Hình 2.9.a). (a) (b) Hình 2.9. Vị trí của đối tượng với đường ranh giới ảo Để giải quyết vấn đề này, ta có thể chuyển đổi không gian quan sát từ môi trường 2D sang 3D (Hình 2.9.b), bằng cách sử dụng phép biến đổi tương quan homography (Hình 2.10), hình ảnh từ các camera được nắn vào cùng một mặt phẳng thế giới thực [97] hoặc tính toán các khối bao 3D cho đối tượng di chuyển [49]. 58 Hình 2.10. Phép biến đổi homography Chính vì vậy, để nâng cao được độ chính xác việc xác định thời điểm chuyển giao đối tượng trong quá trình giám sát, luận án thực hiện tính toán va chạm của đối tượng chuyển động với đường ranh giới ảo trong môi trường 3D thay vì tính toán trong môi trường 2D. Khi đó đối tượng được giám sát và đường ranh giới ảo được mô hình hóa là các khối hộp trong môi trường 3D. Luận án sử dụng hình hộp bao theo hướng đối tượng (OBB) để tính toán. Giờ đây, việc kiểm tra va chạm sẽ thực hiện trên hai khối hình hộp (Hình 2.11). Hình 2.11. Đối tượng chuyển động và đường ranh giới ảo trong môi trường 3D 59 2.3.2. Tính toán va chạm của đối tượng với đường ranh giới ảo 2.3.2.1. Hình hộp bao theo hướng Trong không gian IR3, hình hộp bao theo hướng OBB [27] gồm một tâm C0, ba véc tơ 210 ,, AAA  chỉ hướng của hình hộp và 3 hệ số độ dài tương ứng với kích thước của hình hộp là: 𝑎0 > 0, 𝑎1 > 0, 𝑎2 > 0. Khi đó, 8 đỉnh của hình hộp sẽ được xác định như sau:    2 0 0 .2,1,0,1||* i iiii isAasC  (2.1) 2.3.2.2. Tính toán va chạm Mệnh đề 2.1 [27]: Hai khối đa diện lồi không giao nhau nếu có thể tách rời được chúng bằng một mặt phẳng P thoả mãn một trong hai điều kiện sau:  P song song với một mặt nào đó của một trong hai khối đa diện.  Hoặc là P chứa một cạnh thuộc đa diện thứ nhất và một đỉnh thuộc đa diện thứ hai. Từ mệnh đề trên, ta rút ra nhận xét sau cho phép kiểm tra nhanh sự giao nhau của hai khối đa diện lồi: Điều kiện cần và đủ để kiểm tra hai khối đa diện lồi có giao nhau hay không là kiểm tra sự giao nhau giữa các hình chiếu của chúng lên đường thẳng vuông góc với mặt phẳng P ở trên, đường thẳng này được gọi là trục tách (Hình 2.12). Ta thấy rằng các hộp bao OBB là những khối đa diện lồi, bởi vậy ta hoàn toàn có thể áp dụng định lý trên để kiểm tra va chạm giữa chúng. 60 Hình 2.12. Mặt phẳng tách và trục tách Cho hai hình bao OBB xác định bởi các thông số [C0, 210 ,, AAA  , a0, a1, a2] và [C1, 210 ,, BBB  , b0, b1, b2]. Tập các trục tách tối đa là 15 trục sau:  3 trục chỉ hướng của hộp bao thứ nhất ( iA  ).  3 trục chỉ hướng của hộp bao thứ hai ( jB  ).  9 trục tạo bởi tích có hướng của một trục thuộc hộp bao thứ nhất và một trục thuộc hộp bao thứ hai ( ji BA   ). Mặt khác, ta biết rằng nếu một trục là trục tách thì khi tịnh tiến đến vị trí nào, nó vẫn là trục tách. Bởi vậy, không mất tính tổng quát ta sẽ gọi trục tách có véc tơ chỉ phương là V  và đi qua tâm C0 của hộp bao thứ nhất, do vậy nó có phương trình như sau: VtCd  * 0  . Trong đó, t là tham số. V  có thể là ji BA  , hoặc ji BA   với i, j = 0, 1, 2. Gọi A là một điểm bất kỳ, H là hình chiếu của A lên đường thẳng d (Hình 2.13) khi đó độ dài đoạn thẳng C0H xác định như sau: || * ),,( 0 0 V VAC CdAL    (2.2) 61 Hình 2.13. Hình chiếu A lên đường thẳng d với tâm chiếu C0. Hình 2.14. Chiếu 8 đỉnh của hình hộp lên trục tách d Như vậy, khi chiếu 8 đỉnh của hộp bao thứ nhất lên trục tách d thì sẽ thu được 4 cặp đoạn thẳng có độ dài bằng nhau nằm về hai phía so với C0 (Hình 2.14), độ dài của mỗi đoạn thẳng được xác định như sau: || *** ),,**( 2 0 0 2 0 0 V VAas CdAasCL i iii i iii              (2.3) Như vậy, đoạn thẳng ngắn nhất chứa 8 đoạn thẳng (2.1) sẽ có tâm là C0 và bán kính r0 được xác định như sau:                        || *** max 2 0 0 V VAas r i iii   với mọi |𝑠𝑖| = 1 (2.4) Đặt VrR  * 00  , ta có: max{0 R VAaVAVAa  ****** 22100  1 a , VAaVAVAa  ****** 22100  1 a , VAaVAVAa  ****a** 221100  , VAaVAVAa  ****a** 221100  , 62 VAaVAVAa  ****a** 221100  , VAaVAVAa  ****a** 221100  , VAaVAVAa  ****a** 221100  , VAaVAVAa  ****a** 221100  } VAaVAVAaR  ****** 221000  1 a (2.5) Tương tự, chiếu 8 đỉnh của hộp bao thứ hai lên d với gốc C1, sẽ thu được 4 cặp đoạn thẳng có độ dài bằng nhau nằm về hai phía so với C1, như sau: || *** ),,**( 2 0 1 2 0 1 V VBbs CdBbsCL i iii i iii              (2.6) Chú ý rằng, 8 đoạn thẳng này được nhóm thành 4 cặp đối xứng nhau qua C1. Do vậy, đoạn thẳng ngắn nhất chứa 8 đoạn thẳng (2.2) sẽ có tâm là C1 và bán kính r1 được xác định như sau:                      || *** max 2 0 1 V VBbs r i iii   với mọi |si| = 1 (2.7) Đặt VrR  * 11  , tương tự như trên ta có: VBbVBVBbR  ****** 221001  1 b (2.8) Thực hiện chiếu cả hai hình hộp lên trục tách d, ta thu được các đoạn thẳng C0C1, r0r1 (Hình 2.15). 63 Hình 2.15. Kết quả chiếu 2 hình hộp lên trục tách d Hai đoạn thẳng trên sẽ không giao nhau nếu: 1010101010 *** RRRrVrVCCVrrCC   (2.9) Trong đó: R = C0C1* ||V  Bây giờ ta sẽ giải cụ thể các phương trình trên. Với mỗi véc tơ iB  của hình bao thứ hai ta có thể biểu diễn thông qua các trục của hình bao thứ nhất, tức là: 221100 AcAcAcB iiii   với i = 0, 1, 2. Đặt:   210 ,, AAAA   và  210 ,, BBBB   ;            222120 121110 020100 ccc ccc ccc C (2.10)  B = A*C, do A được cấu thành từ  210 ,, AAA  là các véc tơ đơn vị và vuông góc với nhau  AT*B= C  C = 210 2 1 0 * BBB A A A    =             221202 211101 201000 *** *** *** BABABA BABABA BABABA    (2.11) Từ (2.10) và (2.11) suy ra: jiij BAc  * , hay cij chính là tích vô hướng của hai véc tơ iA  , jB  . Tương tự ta có 221100 BcBcBcA iiii   64 Như đã trình bày ở phần trên, tập các trục tách ứng cử viên: V  ={ i A  , j B  , ji BA   }với i, j = 0, 1, 2. Để tính toán các hệ số R0, R1, R ở trên, ta sẽ làm minh họa cho hai trường hợp V  = iA  và V  = ji BA   , các trường hợp còn lại được tính toán tương tự. Xét trường hợp 0AV   :  R0 = VAa  ** 00 + VAa  ** 11 + 022 ** aVAa    R1 = VBb  ** 00 + VBb  ** 11 + 02201100022 ***** cbcbcbVBb    R = 0A  * D  , với 01 CCD   Xét trường hợp 00 BAV   : R0 = 0000 ** BAAa   + 0011 ** BAAa   + 0022 ** BAAa   Mặt khác: 00 BAV   = )( 2201100000 AcAcAcA   = 120210 AcAc    1022010 ** cacaR   DVR  * = DAcAc  *)( 120210   VBbR  ** 001  + VBb  ** 11 + VBb  **2 2 Ta có thể viết lại V  dưới dạng: V  = 00 BA   = 0202101000 )( BBcBcBc   = 102201 BcBc    VB  * 0 = )(* 1022010 BcBcB   = 0  VB  * 1 = 021022011 )(* cBcBcB    VB  * 2 = 011022012 )(* cBcBcB    0120211 ** cbcbR  Tiếp tục thực hiện với các trường hợp còn lại, ta xây dựng được bảng các giá trị cho R, R0, R1 (Bảng 2.1). 65 Bảng 2.1. Các giá trị R, R0, R1 V  0 R 1 R R 0A  0 a 022011000 cbcbcb  DA  .0 1A  1a 122111100 cbcbcb  DA  .1 2A  2 a 222211200 cbcbcb  DA  .2 0B  202101000 cacaca  0 b DB  .0 1B  212111010 cacaca  1 b DB  .1 2B  222121020 cacaca  2 b DB  .1 00 BA   102201 caca  012021 cbcb  DAcDAc  .. 120210  10 BA   112211 caca  002020 cbcb  DAcDAc  .. 121211  20 BA   122221 caca  001010 cbcb  DAcDAc  .. 122212  01 BA   002200 caca  112121 cbcb  DAcDAc  .. 200020  11 BA   012210 caca  102120 cbcb  DAcDAc  .. 201021  21 BA   022220 caca  101110 cbcb  DAcDAc  .. 202022  02 BA   001100 caca  212221 cbcb  DAcDAc  .. 010100  12 BA   011110 caca  202220 cbcb  DAcDAc  .. 011101  22 BA   021120 caca  201210 cbcb  DAcDAc  .. 012102  2.3.3. Kỹ thuật đề xuất 2.3.3.1. Mô hình hệ thống Mô hình của cấu trúc của hệ thống được thể hiện trong Hình 2.16. 66 Hình 2.16. Mô hình cấu trúc của hệ thống 2.3.3.2. Thuật toán chuyển tiếp camera dựa vào đường ranh giới ảo Dựa vào việc tính toán va chạm ở trên (bảng 2.1), tại mỗi thời điểm liên tục kiểm tra xem có đối tượng nào va chạm với đường ranh giới ảo. Sơ đồ thực hiện thuật toán được thể hiện trong Hình 2.17. 2.3.4. Thực nghiệm 2.3.4.1. Mô hình thực nghiệm Nhằm kiểm chứng kỹ thuật đề xuất, chúng tôi đã tiến hành cài đặt chương trình demo VirtualLine. Chương trình được phát triển trên môi trường Visual C++ 2008 với bộ thư viện mã nguồn mở OpenCV. Đầu vào của chương trình là các file video hoặc kết nối trực tiếp với camera. Chương trình cho phép dựng đường ranh giới ảo, thực hiện tính toán, phát hiện sự va chạm của các đối tượng chuyển động với đường ranh giới ảo, các đối tượng sau khi va chạm với đường ranh giới ảo sẽ được đánh dấu, chương trình được thực hiện trên thời gian thực. 67 ServerWorkstation Phát hiện đối tượng chuyển động Có đối tượng chuyển động Sai Có yêu cầu chuyển tiếp Đúng Theo vết đối tượng Đối tượng đã có nhãn Lưu thông tin đối tượng Cập nhật CSDL đối tượng Tiếp nhận nhãn đối tượng Yêu cầu tiếp nhận chuyển tiếp Khởi tạo CSDL Sinh nhãn mới Va chạm với đường ranh giới ảo Yêu cầu chuyển tiếp Đúng Sai Đúng Yêu cầu cập nhật CSDL Sai Đúng Sai Chọn lựa camera chuyển tiếp Điều phối chuyển tiếp camera Hình 2.17. Sơ đồ thực hiện chương trình của hệ thống Luận án sử dụng 3 camera USB Logitec để giám sát một căn phòng với thị trường quan sát bị chồng chéo như Hình 2.18. Các camera này được gắn 68 cố định trên tường của căn phòng. Dữ liệu video được ghi với kích thước khung hình 640480, tốc độ 15 hình/giây. Hình 2.18. Sơ đồ mặt bằng bố trí camera 2.3.4.2. Kết quả thực nghiệm Hình 2.19 thể hiện việc chuyển tiếp theo dõi giữa các camera. Người được giám sát di chuyển va chạm với đường ranh giới ảo giữa các camera (đường mầu đỏ) đã được đánh dấu (mầu đỏ) và xuất hiện tại vùng quan sát của camera được chuyển tiếp cùng với thông tin về chỉ số của đối tượng và camera chuyển/nhận bàn giao. 69 (a) Chuyển tiếp giữa camera 1 và camera 2 (b) Chuyển tiếp giữa camera 2 và camera 3 Hình 2.19. Chuyển tiếp giữa 2 camera Để đánh giá kết quả kỹ thuật đề xuất, luận án thực hiện so sánh thử nghiệm kỹ thuật kiểm tra va chạm của đối tượng với đường ranh giới ảo trên hai môi trường 2D và 3D, tham số Precision được dùng để đo độ chính xác của của kỹ thuật xác định thời điểm chuyển tiếp camera, được xác định bởi công thức sau: FC C NN N  Precision (2.12) Trong đó, NC là số lần chuyển tiếp phát hiện chính xác; NF là số lần chuyển tiếp phát hiện nhầm. Kết quả được chỉ ra ở Hình 2.20. 70 Hình 2.20. Biểu đồ so sánh giá trị Precision ở mỗi camera Kết quả thực nghiệm cho thấy, tất cả các thời điểm chuyển tiếp camera đều được phát hiện khi đối tượng di chuyển va chạm vào đường ranh giới ảo đối với cả hai môi trường 2D và 3D. Với tính toán trong môi trường 2D, hầu hết thời điểm yêu cầu chuyển tiếp được phát hiện sớm hơn, ngay cả khi đối tượng thực tế chưa va chạm với đường ranh giới ảo, điều này đã được cải thiện đáng kể khi thực hiện tính toán trong môi trường 3D. Tuy vậy, do kỹ thuật sử dụng trong giai đoạn phát hiện đối tượng chuyển động có bỏ qua một số khung hình trong quá trình thao tác, nên vẫn còn một số trường hợp khi đối tượng di chuyển qua đường ranh giới ảo thì hệ thống chưa kịp phát hiện. Kỹ thuật đề xuất đã được công bố trong Tạp chí Khoa học Công nghệ, Viện Hàn lâm Khoa học và Công nghệ Việt Nam năm 2013. 2.4. Chọn lựa camera dựa trên hướng chuyển động của đối tượng Công việc thứ hai trong chuyển tiếp camera là xác định camera nhận chuyển giao, đây là một trong hai yêu cầu quan trọng của quá trình chuyển tiếp camera. Trong phần này, luận án đề xuất một kỹ thuật chọn lựa camera dựa vào hướng chuyển động của đối tượng, nhằm giảm thiểu số lần chuyển 47% 40% 55% 92% 95% 97% 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Camera 1 Camera 2 Camera 3 Precision % 2D 3D 71 tiếp camera khi đối tượng di chuyển qua các vùng giám của các camera trong hệ thống OVL. 2.4.1. Dự đoán vị trí và hướng chuyển động của đối tượng Việc dự báo trạng thái của đối tượng rất quan trọng trong bài toán giám sát, có nhiều mô hình dự báo trạng thái đối tượng, trong phần này luận án xây dựng một mô hình dự báo để xác định vị trí và hướng chuyển động của đối tượng chuyển động trong tương lai. Mô hình được xây dựng dựa trên bộ lọc Kalman [109]. Tại thời điểm 𝑡1, đối tượng được giám sát có vị trí (𝑥𝑡1 , 𝑦𝑡1), di chuyển với vận tốc (𝑣𝑡1 𝑥 , 𝑣𝑡1 𝑦 ) và gia tốc (𝑎𝑡1 𝑥 , 𝑎𝑡1 𝑦 ). Ký hiệu 𝑠𝑡1 là trạng thái của đối tượng tại thời điểm 𝑡1: 𝑠𝑡 = [ 𝑥𝑡1 𝑦𝑡1 𝑣𝑡1 𝑥 𝑣𝑡1 𝑦 ] (2.13) Trạng thái của đối tượng ở thời điểm 𝑡2: 𝑠𝑡2 = [ 𝑥𝑡2 𝑦𝑡2 𝑣𝑡2 𝑥 𝑣𝑡2 𝑦 ] = [ 𝑥𝑡1 + 𝑣𝑡1 𝑥 ∆𝑡 + 1 2 𝑎𝑡1 𝑥 ∆𝑡2 𝑦𝑡1 + 𝑣𝑡1 𝑦∆𝑡 + 1 2 𝑎𝑡1 𝑦 ∆𝑡2 𝑣𝑡1 𝑥 + 𝑎𝑡1 𝑥 ∆𝑡 𝑣𝑡1 𝑦 + 𝑎𝑡1 𝑦 ∆𝑡 ] (2.14) Trong đó t là khoảng thời gian từ 𝑡1 đến 𝑡2; Công thức (2.14) có thể được biểu diễn như sau: 72 [ 𝑥𝑡2 𝑦𝑡2 𝑣𝑡2 𝑥 𝑣𝑡2 𝑦 ] = [ 1 0 ∆𝑡 0 0 1 0 0 0 0 1 ∆𝑡 0 0 0 1 ] [ 𝑥𝑡1 𝑦𝑡1 𝑣𝑡1 𝑥 𝑣𝑡1 𝑦 ] + [ ∆𝑡2 2 0 0 ∆𝑡2 2 ∆𝑡 0 0 ∆𝑡 ] [ 𝑎𝑡1 𝑥 𝑎𝑡1 𝑦 ] (2.15) Đặt 𝐴 = [ 1 0 ∆𝑡 0 0 1 0 0 0 0 1 ∆𝑡 0 0 0 1 ]; 𝐺 = [ ∆𝑡2 2 0 0 ∆𝑡2 2 ∆𝑡 0 0 ∆𝑡] ; 𝑎𝑡1 = [ 𝑎𝑡1 𝑥 𝑎𝑡1 𝑦 ] Phương trình (2.15) có thể được viết lại như sau: 𝑠𝑡2 = 𝐴𝑠𝑡1 + 𝐺𝑎𝑡1 (2.16) Biểu diễn trong không gian trạng thái, ta có trạng thái dự báo: 𝑠𝑡2 = 𝐴𝑠𝑡1 + 𝑤𝑡1 (2.17) Trong đó:  𝑠𝑡2: là trạng thái của đối tượng mà ta cần dự báo;  𝑠𝑡1: Trạng thái hiện thời của đối tượng;  𝐴: Ma trận chuyển trạng thái từ trạng thái 𝑡1 sang 𝑡2; 𝐴 = [ 1 0 ∆𝑡 0 0 1 0 0 0 0 1 ∆𝑡 0 0 0 1 ] (2.18)  w: là biến ngẫu nhiên đại diện cho nhiễu hệ thống. Biến ngẫu nhiên này độc lập và tuân theo luật phân phối chuẩn a với giá trị trung bình = 0 và ma trận hiệp biến (covariance) là Q. 𝑝(𝑤)~𝑁(0,𝑄) (2.19) 73 𝑄 = 𝐺𝐺𝑇𝜎𝑎 2 = [ ∆𝑡2 4 0 ∆𝑡3 2 0 0 ∆𝑡2 4 0 ∆𝑡3 2 ∆𝑡3 2 0 ∆𝑡2 0 0 ∆𝑡3 2 0 ∆𝑡2] 𝜎𝑎 2 (2.20) Giá trị tọa độ x đo được tại thời điểm 𝑡2 là: 𝑧𝑡2 𝑥 = 𝑥𝑡2 + 𝑢1(𝑡2) (2.21) Giá trị tọa độ y đo được tại thời điểm t+1 là: 𝑧𝑡2 𝑦 = 𝑦𝑡2 + 𝑢2(𝑡2) (2.22) Kết hợp hai phương trình (2.21) (2.22), ta có: [ 𝑧𝑡2 𝑥 𝑧𝑡2 𝑦 ] = [ 1 0 0 0 0 0 1 0 ] × [ 𝑥𝑡2 𝑦𝑡2 𝑣𝑡2 𝑥 𝑣𝑡2 𝑦 ] + [ 𝑢1(𝑡2) 𝑢2(𝑡2) ] (2.23) Mô hình kết quả đo đạc: 𝑧𝑡2 = 𝐻𝑠𝑡2 + 𝑢𝑡2 (2.24) Trong đó:  𝑧𝑡2: là giá trị đo đạc được của 𝑠𝑡2;  H: là Ma trận mô hình quan sát giá trị của trạng thái đo được tại 𝑡2: 𝐻 = [ 1 0 0 0 0 0 1 0 ] (2.25) 74  u: là biến ngẫu nhiên đại diện cho nhiễu đo đạc. Biến ngẫu nhiên này độc lập và tuân theo luật phân phối chuẩn z với giá trị trung bình = 0 và ma trận hiệp biến (covariance) là 𝑅 = 𝐸[𝑢𝑢𝑇]𝜎𝑧 2 𝑝(𝑢)~𝑁(0, 𝑅) (2.26) 2.4.2. Biểu diễn mối quan hệ giữa các vùng quan sát của hệ thống Vùng quan sát của hệ thống camera có thể biểu diễn bằng đồ thị  EVG , :  nvvvV ,...,, 21 ,  meeeE ,...,, 21 . Trong đó, mỗi vùng quan sát của một camera được biểu thị bằng một đỉnh iv . Hai đỉnh được nối với nhau bằng một cạnh je nếu hai vùng có một điểm chung. Có nhiều hình thức biểu diễn

Các file đính kèm theo tài liệu này:

  • pdfluanants_ngo_duc_vinh_767_1854498.pdf
Tài liệu liên quan