Chúng tôi có một vấn đề OpenCV mở (và văn bản) đường dẫn tập tin có chứa các ký tự không Ascii trên Windows. tôi thấy câu hỏi OpenCV imread with foreign characters và imread(openCV),QString unicodes nhưng vẫn không hiểu một cách đúng đắn của việc giải quyết vấn đề.opencv imread() trên Windows cho tên tập tin ASCII
Khi đến nay tôi khi tôi nhìn thấy trong mã nguồn OpenCV, nó sử dụng fopen ngay cả trên Windows (thay vì _wfopen) và afaik fopen không xử lý các ký tự không ascii trên Windows. Từ những câu hỏi trên tôi thấy rằng có thể có một số mẹo sử dụng QStrings, nhưng nếu nó hoạt động chính xác thì nó sẽ làm gì? Làm thế nào nó chuyển đổi một chuỗi unicode thành một mảng ký tự mà sẽ được chấp nhận bởi fopen() của Windows?
P.S. Chúng tôi không sử dụng QT
Cảm ơn trước!
Cảm ơn! Tôi có thể xác nhận rằng giải pháp này hoạt động cho chúng tôi – Vyacheslav
Tôi có cùng một vấn đề và tôi muốn thử giải pháp của bạn. Tôi có thể nhận được một 'FILE *' trên tập tin của tôi với 'wfopen' nhưng sau đó tôi không biết làm thế nào để sử dụng đúng' imdecode' để có được một 'cv :: Mat' từ đó. Ngoài ra: không OpenCV vẫn không hỗ trợ phi ASCII tên tập tin nguyên bản, cũng trong phiên bản 3.0? PS: là có thể có một cách dễ dàng hơn nhưng vẫn hiệu quả nếu tôi _do_ sử dụng Qt (Tôi có nghĩa là không đọc 'QImage' s và chuyển đổi sau đó)? – user1488118