2010-12-02 72 views
0

我想知道根據圖像中的主要對象顏色或圖像中使用最多的顏色的圖像搜索方法。圖像搜索引擎根據圖像中的主要顏色搜索

有沒有教程,甚至有產品購買?

我想編程一個搜索引擎可以使用這個功能。

那麼,任何人都可以幫我

謝謝。

回答

3

我已經完成了類似的工作。我的實現可以在這裏找到http://code.google.com/p/hppg/。現場示例可以在項目主頁中找到。此搜索引擎還可以同時搜索關鍵字和顏色。所有的詳細信息和代碼可以在項目主頁找到。希望對你有所幫助:)

2

每種顏色都有一個RGB值,表示顏色中紅色,綠色和藍色的級別。您可以計算每個像素的所有RGB值的總和,然後除以像素數,以獲得圖像的「平均」顏色。

另一種方法是將顏色弄平(將RGB值中的所有最後數字更改爲0,例如#F8824A變爲#F08040),然後使用相同顏色查找圖像中最大的表面。

想象一下某人在白牆前的照片 - 通過使用第一種方法,您將獲得白色和人物的衣服和臉部的混合物。使用第二種方法時,你會變白,除非人的襯衫的「顏色常量」區域大於牆壁的可見部分。

必須有其他的想法,但這應該讓你考慮你想要什麼。

2

另一種選擇是將圖像轉換爲HSV space(色調,飽和度,值),並計算平均色調。如果平均色調落入的特定範圍,則保留圖像,否則將其丟棄。 特定範圍取決於您感興趣的顏色。例如,對於綠色圖像,您需要60至180度之間的色調。請參見下面的HSV圖:

alt text

在HSV的工作,而不是RGB的好處是HSV更自然地連接到人類如何感知顏色。 RGB更適合用於在加色系統中顯示信息,即計算機監視器。

根據您願意花多少時間在此上,您可能不一定需要實現自己的搜索引擎。只需將您的查詢提供給Google的圖片搜索,抓取結果中的所有圖片,然後使用上述方法(或其他一些標準,如上面提到的deltreme)對其進行過濾。我最近做了一些類似於從Youtube搶海上海岸警衛隊的視頻(幸運的是,我想要的主要是藍色)。

對於搜索部分,檢查出Google's APIs。我沒有用過圖片搜索,但他們的Youtube API非常有幫助。