PDA

View Full Version : [help me]xác định khoảng cách và đo kích thước vật thể bằng webcam.


congtai
24-03-2011, 12:32 AM
chào các bạn trong diễn đàn, hiện tại mình đang làm khóa luận về đề tài:
dùng webcam xác định khoảng cách, đo kích thước vật thể . mình đang nghiên cứu đề tài mà chưa đâu vào đâu cả ,mình rất lo, hiện tại mình mới kết nối được webcam với máy tính thông qua thư viện của openCV, cũng có tìm hiểu qua matlab, nhưng vẫn chưa ổn. mình muốn hỏi các bạn xem là: với 2 công cụ như vậy, mình có thể tạo ra 1 giao diện trên máy tính. với các thông số khoảng cách, kích thước vật không ạ, ví dụ như biết khoảng cách để đo kích thước và ngược lại , hay thêm 1 code nữa là xác định tiêu cự của webcam. rất mong được hồi đáp của mọi người,để mình hiểu hơn, thật sự mình rất mù mờ cái đề tài này.

thanhsonvn90
27-03-2011, 08:10 PM
Up hộ anh. Em cũng rất quan tâm đến vấn đề này

congtai
28-03-2011, 01:10 AM
có bạn nào biết chút thông tin về đề tài này, cho mình tham khảo hướng đi với .hjx

dkhanh13
12-05-2011, 03:34 AM
Nếu biết được tiêu cự của webcam, kích thước cảm biến(Cái này thì thường là thông số của nhà sản xuất) có thể suy ra được kích thước của vật thông qua kích thước trên ảnh(Bỏ qua các biến dạng ảnh do vật kính,...). Về phương pháp thì sử dụng tam giác đồng dạng. Tuy nhiên muốn đo được kích thước thì phải biết khoảng cách, và muốn đo khoảng cách thì phải biết kích thước (trường hợp này là sử dụng một ảnh). Nếu sử dụng OpenCV thì nó có hỗ trợ xử lý với hai webcam đồng thời để thu nhận ảnh stereo, từ đó tạo đám mây điểm, rồi xử lý. Ngoài ra thì cũng có PCL (Point Cloud Libraries) hỗ trợ xử lý thông tin từ các point clound.
Nếu xử dụng 1 camera thì có thể sử dụng thêm các thiết bị phụ để xác định khoảng cách, chẳng hạn như tia laser, từ đó xác định kích thước của vật.
Nếu không chuyên về CNTT, có một lựa chọn khác là xử dụng Kinect với bộ API hỗ trợ từ OpenNI.

Việc tạo giao diện là độc lập với thuật toán, để tạo giao diện có thể sử dụng wxWidgets, QT, ...

P/S làm việc với matlab chủ yếu là trên môi trường thí nghiệm, nếu cần đáp ứng nhanh về thời gian, tối ưu mã thì sử dụng C. ngoài ra thì có thể sử dụng python.