Nhiều lần chúng tôi có một luồng video để xử lý mà không cần truy cập vào camera. Có quyền truy cập vào ma trận camera sẽ có lợi cho các kỹ thuật xử lý khác nhau. Có thể hack hiệu chỉnh máy ảnh mà không cần truy cập vào máy ảnh?
Tôi có một luồng video từ một camera đơn gắn trên một chiếc ô tô đang di chuyển ghi lại con đường (Do đó có nhiều đường thẳng song song trên mặt phẳng mặt đất, các góc từ vạch kẻ đường nhưng không có vòng tròn). Tôi muốn tạo chế độ xem từ trên xuống về điều này nhưng tôi không có quyền truy cập vào máy ảnh. Có thể không? Nếu vậy thì thế nào?
Tôi hiểu từ Học OpenCV: Tầm nhìn máy tính với sách Thư viện OpenCV mà tôi cần các ma trận sau:
- Nội tại, và
- Méo mó
.. đến cv2.undistort()
hình ảnh, tính toán homography cv2.getPerspectiveTransform()
và cv2.warpPerspective()
cuối cùng để có được topview.
Câu hỏi
- Làm cách nào tôi có thể tính toán / tính gần đúng / đoán Intrinsics hoặc Ma trận biến dạng / tham số? Có phải tất cả các thông số quan trọng?
- Có thể sao chép các tham số từ các máy ảnh khác (như mẫu mã nguồn OpenCV) không?
Nghiên cứu trước:
- Hướng dẫn hiệu chỉnh máy ảnh Python OpenCV - Yêu cầu quyền truy cập vào máy ảnh
- Tự động hiệu chỉnh máy ảnh - Cung cấp hy vọng "hiệu chuẩn có thể đạt được nếu nhiều bộ đường thẳng hoặc đối tượng có hình dạng đã biết (ví dụ như hình tròn) được xác định"
- Cố gắng hiểu các câu trả lời liên quan đến hiệu chuẩn máy ảnh [ 1 ] [ 2 ] [ 3 ] trên SO cố gắng tìm câu trả lời cho vấn đề của tôi.
Có ý kiến gì không? Đánh giá cao sự giúp đỡ của bạn trước!
Cập nhật 1: Thử nghiệm chuyển đổi phối cảnh
Tôi đã cố gắng sử dụng getPerspectiveTransform(pts1,pts2)
và dst = cv2.warpPerspective(img,M,(x,y), flags=flags)
để khớp bốn điểm của hình ảnh đầu vào để có được một kiểu xem từ trên xuống. Nhưng tôi không chắc chắn làm thế nào để xử lý các biến dạng:
Chọn điểm: Đầu tiên, tôi phóng to đầu vào và cố gắng chọn chính xác các điểm bên ngoài phù hợp trên các điểm đánh dấu làn đường để tạo Ma trận Homography và xem trước hình ảnh chuyển đổi phối cảnh với warpPerspective
. Tôi thấy các làn đường bị biến dạng nhưng không biết làm thế nào xấu. Để có được một ý tưởng, tôi đã chọn các điểm xa hơn bằng delta (50px) ở mỗi đầu. Đây là những gì tôi nhận được:
Tôi có thể sửa các biến dạng mà không cần truy cập vào máy ảnh không? Có cách nào khác để khắc phục điều này.
Vài hình ảnh đầu vào để chơi với:
Cập nhật 2: Luồng quang không song song (tán xạ) trong chế độ xem từ trên xuống
Đây có phải là do sự biến dạng hay cái gì khác?: