Tôi đã viết một chương trình máy tính có thể phát hiện tiền trong một hình ảnh tĩnh (.jpeg, .png, v.v.) bằng cách sử dụng một số kỹ thuật tiêu chuẩn cho thị giác máy tính (Gaussian Blur, ngưỡng, Hough-Transform, v.v.). Sử dụng tỷ lệ của các đồng tiền nhặt được từ một hình ảnh nhất định, tôi có thể xác định chắc chắn đó là đồng tiền nào. Tuy nhiên, tôi muốn thêm vào mức độ tự tin của mình và cũng xác định xem một đồng xu mà tôi suy ra thuộc loại A (từ tỷ số bán kính) cũng có đúng colo [u] r hay không. Vấn đề là đối với đồng tiền của Anh et al. (đồng, bạc, vàng), các màu tương ứng (đặc biệt từ đồng sang vàng) rất giống nhau.
Tôi có một thói quen trích xuất màu trung bình của một đồng tiền nhất định theo 'không gian màu' RedGreenBlue (RGB) và thường xuyên chuyển đổi màu này thành HueSaturationBrightness (HSB hoặc HSV) 'color-space'.
RGB không đẹp lắm khi làm việc trong việc cố gắng phân biệt giữa ba màu đồng xu (xem hình ảnh [cơ bản] đính kèm để biết ví dụ). Tôi có các phạm vi và giá trị tiêu biểu sau cho màu của các loại tiền khác nhau:
Lưu ý: giá trị tiêu biểu ở đây là giá trị được chọn bằng cách sử dụng giá trị trung bình 'pixel-khôn ngoan' của hình ảnh thực.
**Copper RGB/HSB:** typicalRGB = (153, 117, 89)/(26, 0.42, 0.60).
**Silver RGB/HSB:** typicalRGB = (174, 176, 180)/(220, 0.03, 0.71).
**Gold RGB/HSB:** typicalRGB = (220, 205, 160)/(45, 0.27, 0.86)
Trước tiên tôi đã thử sử dụng 'Khoảng cách Euclidian' giữa một màu đồng xu trung bình nhất định (sử dụng RGB) và các giá trị tiêu biểu cho từng loại đồng xu được đưa ra ở trên, coi các giá trị RGB là một vectơ; đối với đồng chúng ta sẽ có:
trong đó giá trị nhỏ nhất của chênh lệch ( ) sẽ cho chúng ta biết loại tiền nào có khả năng nhất. Phương pháp này đã cho thấy nó rất không chính xác.
Tôi cũng đã thử chỉ so sánh màu sắc của các đồng tiền với các giá trị tiêu biểu của các loại được cung cấp ở trên. Mặc dù về mặt lý thuyết, điều này cung cấp 'không gian màu' tốt hơn nhiều để xử lý các mức độ sáng và độ bão hòa khác nhau của hình ảnh, nhưng nó cũng không đủ chính xác.
Câu hỏi: Phương pháp tốt nhất để xác định loại tiền dựa trên màu sắc (từ hình ảnh tĩnh) là gì?
Cảm ơn rất nhiều vì thời gian của bạn.
Chỉnh sửa 1
Lưu ý: Tôi đã thử tất cả các ý tưởng được thảo luận dưới đây và đã đạt được bên cạnh không có gì. Phương sai trong điều kiện ánh sáng (ngay cả trong cùng một hình ảnh) làm cho vấn đề này trở nên rất khó khăn và cần được xem xét.
Chỉnh sửa 2 (Summery of Outcome)
Cảm ơn bạn cho câu trả lời của bạn. Nghiên cứu sâu hơn của riêng tôi (bao gồm cả câu trả lời và nhận xét của bạn) đã chỉ ra vấn đề khó giải quyết như thế nào trong trường hợp chung về ánh sáng tùy ý, máy ảnh tùy ý (thiết bị di động), dao động màu đồng xu (ngay cả đối với cùng loại / loại) v.v ... Lần đầu tiên tôi xem nhận dạng màu da (một lĩnh vực nghiên cứu rất tích cực) là điểm khởi đầu và vẫn còn nhiều vấn đề ngay cả khi chỉ nhận biết màu da cho người da trắng (xem bài viết này để xem xét các kỹ thuật hiện tại), và thực tế là vấn đề này chứa ba đối tượng màu riêng biệt, tất cả chúng có thể có các nhiễm sắc thể liên tục và khác nhau làm cho chủ đề về thị giác máy tính trở nên rất khó để phân loại và xử lý theo đó (thực tế bạn có thể làm bằng tiến sĩ tốt về nó !).
Tôi đã xem xét Phương pháp ràng buộc Gamut từ bài đăng rất hữu ích của DW bên dưới. Đây là cái nhìn đầu tiên rất hứa hẹn là một bước xử lý trước để biến đổi hình ảnh và các đối tượng đồng xu riêng biệt thành màu sắc độc lập với điều kiện ánh sáng. Tuy nhiên, ngay cả kỹ thuật này cũng không hoạt động hoàn hảo (và liên quan đến một thư viện hình ảnh / biểu đồ cho ánh xạ - mà tôi không muốn tham gia) và các phương pháp Kiến trúc mạng thần kinh phức tạp hơn nhiều. Trong thực tế , bài viết này nêu trong bản tóm tắt rằng:
"current machine colour constancy algorithms are not good enough for colour-based
object recognition.".
Điều đó không có nghĩa là không có nhiều bài báo cập nhật về chủ đề này ngoài kia, nhưng tôi không thể tìm thấy chúng và dường như nó không phải là một lĩnh vực nghiên cứu rất tích cực vào thời điểm này.
Câu trả lời của AVB cũng hữu ích và tôi đã xem xét ngắn gọn về L A B *.
"The nonlinear relations for L*, a*, and b* are intended to mimic the nonlinear
response of the eye. Furthermore, uniform changes of components in the L*a*b* colour
space aim to correspond to uniform changes in perceived colour, so the relative
perceptual differences between any two colours in L*a*b* can be approximated by
treating each colour as a point in a three dimensional space."
Từ những gì tôi đã đọc, việc chuyển đổi sang không gian màu này cho các hình ảnh phụ thuộc vào thiết bị của tôi sẽ rất khó khăn - nhưng tôi sẽ xem xét chi tiết điều này (để xem cách thực hiện nào đó) khi tôi có thêm một chút thời gian.
Tôi không nín thở tìm giải pháp cụ thể cho vấn đề này và sau khi thử với L A B *, tôi sẽ bỏ qua màu đồng xu và tìm cách chắc chắn các thuật toán phát hiện hình học hiện tại của mình (Elliptic Hough Transform, v.v.).
Cảm ơn tất cả các bạn. Và như một lưu ý cuối cho câu hỏi này, đây là cùng một hình ảnh với thuật toán phát hiện hình học mới, không có nhận dạng màu: