Tôi khuyên bạn nên xem xét di chuyển ra khỏi chỉ bằng cách sử dụng biểu đồ RGB. Bạn có thể thu được thông báo tốt hơn về hình ảnh của mình nếu bạn chụp ảnh 2 Haar wavelet của hình ảnh (dễ hơn rất nhiều so với âm thanh của nó, nó chỉ có rất nhiều trung bình và một số căn bậc hai được sử dụng để cân các hệ số của bạn) và chỉ giữ lại k hệ số trọng số lớn nhất trong wavelet như là một vectơ thưa thớt, bình thường hóa nó và lưu lại để giảm kích thước của nó. Bạn nên rescale R G và B bằng cách sử dụng trọng lượng cảm nhận trước ít nhất hoặc tôi khuyên bạn nên chuyển sang YIQ (hoặc YCoCg, để tránh nhiễu lượng tử) để bạn có thể lấy mẫu thông tin chrominance với tầm quan trọng giảm.
Bây giờ, bạn có thể sử dụng sản phẩm dấu chấm của hai trong số các vectơ chuẩn hóa thưa thớt này làm thước đo tương tự. Các cặp hình ảnh với các sản phẩm chấm lớn nhất sẽ có cấu trúc rất giống nhau. Điều này có lợi ích là hơi có khả năng chống thay đổi kích thước, thay đổi màu sắc và watermarking, và được thực sự dễ dàng để thực hiện và nhỏ gọn.
Bạn có thể trao đổi lưu trữ và độ chính xác bằng cách tăng hoặc giảm k.
Sắp xếp theo một điểm số duy nhất sẽ có thể gây khó khăn cho loại vấn đề phân loại này. Nếu bạn nghĩ về nó nó sẽ yêu cầu hình ảnh để chỉ có thể 'thay đổi' dọc theo một trục, nhưng họ không. Đây là lý do tại sao bạn cần một vectơ các tính năng. Trong trường hợp sóng Haar wavelet của nó khoảng nơi mà các gián đoạn sắc nét nhất trong hình ảnh xảy ra. Bạn có thể tính toán khoảng cách giữa các hình ảnh theo cặp, nhưng vì tất cả những gì bạn có là một số liệu khoảng cách, thứ tự tuyến tính không có cách nào để diễn tả 'tam giác' của 3 hình ảnh đều giống nhau. (tức là nghĩ về một hình ảnh có màu xanh lá cây, một hình ảnh có màu xanh và một hình ảnh có màu xanh dương.)
Điều đó có nghĩa là bất kỳ giải pháp thực sự nào cho vấn đề của bạn sẽ cần các hoạt động O (n^2) số lượng hình ảnh bạn có. Trong khi nếu nó đã có thể tuyến tính các biện pháp, bạn có thể yêu cầu chỉ O (n log n), hoặc O (n) nếu biện pháp phù hợp cho, nói, một loại radix. Điều đó nói rằng, bạn không cần phải chi tiêu O (n^2) kể từ khi thực hành bạn không cần phải sàng lọc thông qua toàn bộ, bạn chỉ cần tìm những thứ đó gần hơn một số ngưỡng. Vì vậy, bằng cách áp dụng một trong các kỹ thuật để phân vùng không gian vectơ thưa thớt của bạn, bạn có thể nhận được nhiều asymptotics nhanh hơn cho 'tìm kiếm tôi k của hình ảnh tương tự hơn so với vấn đề ngưỡng nhất định' so với việc so sánh mọi hình ảnh với mọi hình ảnh, bạn có thể cần ... nếu không chính xác những gì bạn yêu cầu. Trong bất kỳ trường hợp nào, tôi đã sử dụng điều này vài năm trước để có hiệu quả tốt khi cố gắng giảm thiểu số lượng hoạ tiết khác nhau mà tôi đã lưu trữ, nhưng cũng có rất nhiều tiếng ồn nghiên cứu trong không gian này cho thấy hiệu quả của nó (và trong trường hợp này so sánh nó với một hình thức tinh vi hơn của phân loại biểu đồ):
http://www.cs.princeton.edu/cass/papers/spam_ceas07.pdf
Nếu bạn cần độ chính xác tốt hơn trong việc phát hiện, các minHash và các thuật toán tF-IDF có thể được sử dụng với wavelet Haar (hoặc biểu đồ) để đối phó với các chỉnh sửa mạnh mẽ hơn:
Cuối cùng, Stanford có một tìm kiếm hình ảnh dựa trên một biến thể kỳ lạ hơn của cách tiếp cận này, dựa trên việc khai thác thêm tính năng từ các wavelet để tìm các phần xoay hoặc chia tỷ lệ hình ảnh, v.v. số lượng công việc bạn muốn làm.
http://wang14.ist.psu.edu/cgi-bin/zwang/regionsearch_show.cgi
Một câu hỏi quan trọng, suy nghĩ về những gì bạn đã viết và một số câu trả lời cho câu hỏi liên quan mà Naaff đã chỉ ra, bạn có thể muốn xác định rõ hơn ý nghĩa "tương tự". Một hình ảnh giống hệt nhau, nhưng năm điểm ảnh bù đắp, là "tương tự"? Trực quan có ... nhưng với một thuật toán ... có lẽ không, trừ khi bạn đã nghĩ về nó, và chiếm nó. Bạn có thể cung cấp thêm bất kỳ chi tiết nào không? Các bản sao sẽ chính xác hay chỉ là "đóng"? Bạn có nhìn vào các bản quét mà chúng có thể khác nhau bằng một biện pháp góc nhỏ không? Làm thế nào về cường độ? Có * nhiều * biến ở đây ... – Beska
Cách 'trùng lặp' khác nhau? ví dụ. Họ có thể là hình ảnh của cùng một vị trí với tư thế/thay đổi khác nhau không? Bạn dường như muốn cái gì đó là O (nlog (n)) với số lượng hình ảnh. Có ai biết nếu điều này là có thể? Dường như nó có thể là .. –
@The Unknown: Nếu bạn không hài lòng với bất kỳ câu trả lời hiện tại nào, bạn có thể cung cấp cho chúng tôi thêm một số hướng dẫn không? Chúng tôi đã cố hết sức để trả lời câu hỏi của bạn, nhưng không có bất kỳ phản hồi nào, chúng tôi không thể tìm ra điều gì tốt hơn. – Naaff