توصيفگر ها :
تشخيص حركت اشيا , روش تفاضل پسزمينه , ضريب بروزرساني وفقي , XSG , FPGA
چكيده فارسي :
در چند سال اخير تشخيص حركت اشيا يكي از مباحث مطرح در مسائل بينايي رايانه و پردازش تصوير بوده است كه به دليل كاربردهاي فراوان آن از جمله در فيلمهاي نظارتي، امنيت فرودگاهها، سيستمهاي نظامي، تشخيص وسايل نقليه و عابرين پياده و نمايشگرهاي ترافيكي از اهميت بالايي برخوردار است. با استفاده از روشهايي مانند تفاضل زماني، تفاضل پسزمينه و شار نوري، اشيا متحرك شناسايي ميشوند. پيادهسازي سختافزاري سيستمهاي تشخيص حركت اشيا نسبت به پيادهسازي نرمافزاري آنها براي دستيابي به عملكرد بلادرنگ ضروري و داراي عملكرد بمراتب بهتري است. در اين رابطهFPGA يكي از منعطفپذيرترين و پرسرعتترين ساختارها براي پيادهسازي سختافزاري الگوريتمهاي تشخيص حركت بلادرنگ ميباشد.
در مطالعه حاضر يك الگوريتم تشخيص حركت با استفاده از روش تفاضل پسزمينه كه رايجترين روش در تشخيص اشيا متحرك ميباشد ارائه شده است. الگوريتم پيشنهادي براي كاربردهايي كه در آنها دوربين ثابت است مناسب است. براي آزمايش الگوريتم پيشنهادي از ويدئوهاي موجود در چند پايگاه داده استفاده شده است. در اين الگوريتم پس از دريافت ويدئوي ورودي ابتدا ويدئو به فريمهاي متوالي تقسيم و سپس فريمها به مقياس خاكستري تبديل ميگردند. در مرحلهي بعد با استفاده از فريمهاي اوليه، اولين پسزمينه ساخته ميشود. در ادامه با استفاده از فريمهاي ورودي و پسزمينهي اوليه و نيز با استفاده از ضريب بروزرساني α، پسزمينه بروزرساني شده و با استفاده از آنها فريمهاي خروجي بدست ميآيند. در اين الگوريتم با محاسبهي مقادير MSE فريمهاي متوالي، مقدار α با توجه به تغييرات محيط و پسزمينه بهصورت وفقي تغيير ميكند.
الگوريتم پيشنهادي ابتدا توسط نرمافزار Matlabمورد ارزيابي قرار گرفته است. سپس براي بررسي صحت عملكرد سختافزار، الگوريتم توسط ابزار XSG شبيهسازي شده است. در انتها به كمك نرمافزار Vivado و با استفاده از زبان توصيف سختافزار VHDL معماري الگوريتم پيشنهادي بر روي تراشهي xc7k160tfbg484-3 از خانوادهي Kintex 7 پيادهسازي شده است. نتايج حاصل از شبيهسازي متوسط زمان لازم براي پردازش هر فريم با ابعاد 640*360 را 2/304 ميليثانيه با نرخ پردازش 130 فريمبرثانيه نشان ميدهد. همچنين تاخير تشخيص اشيا متحرك 4/6 ميليثانيه بدست آمده است.
چكيده انگليسي :
In recent years, object motion detection has been one of the main topics in the computer vision and image processing area with a great importance due to its many applications such as surveillance video, airport security, military system, vehicles and pedestrians detection, and traffic display. Moving objects can be detected by using methods such as time difference, background subtraction, and optical flow. In many applications hardware implementation of motion detection systems is necessary to achieve real-time performance, and this implementation provides much better performance than software implementation. FPGA is one of the safest and fastest structures for Hardware implementation of real-time motion detection algorithms.
In present work a motion detection algorithm based on the background subtraction method which is the most common method of motion detection is presented. The proposed algorithm is suitable for the applications in which the camera is stationary. Videos from several data bases have been used to analyze the algorithm. In this algorithm after receiving the input video, first the video is divided into some consecutive frames, and then the frames are converted to grayscale. In the next step, the first background frame is built by using the initial video frames. Following that at each step the background is updated by using the current input frame, the previous background frame and a background updating factor parameter called alpha. The extracted backgrounds are used to obtain output frames. In this algorithm, by calculating the MSE values of the consecutive frames, parameter alpha is changed adaptively according to the changes in the environment and background.
The proposed algorithm was first evaluated by Matlab software. Then the algorithm was simulated by the XSG tool to check the accuracy of the hardware implementation. Finally, with the Vivado software and using the VHDL hardware description language, the proposed algorithm is implemented on the xc7k160tfbg484-3 chip of the Kintex 7 family. Simulation results show that average processing time for each frame with resolution of 360*640 pixels is 2.304 ms with 130fps processing rate and latency detection 4.608 ms is obtained.