본문 바로가기
← 메인으로
검색

색상 검색

게시 2024-08-08

색상 검색 프로세스를 단계별로 나타낸 흐름도. 사전 색인 과정(검색 대상 이미지 → RGB → Lab/HSV 색 공간 변환 → K-Means 색상 클러스터링 → 주요 색상 3~5개 색상 벡터화 → FAISS/Qdrant 벡터 DB 저장), 검색 과정(사용자 색상/이미지 선택 → 동일한 색상 추출 과정 → 벡터 검색/유사도 계산 → 유사 색상순 정렬 → Top-K 결과 반환) 순으로 이어지며, 저장된 벡터를 기준으로 유클리드 거리로 유사도를 계산하는 구조.

  • 사용자가 원하는 색상을 기준으로 유사한 색상의 상품이나 이미지를 검색하는 방식
  • 텍스트(“네이비 계열”), 색상 코드 직접 선택, 이미지 업로드 등 다양한 방식으로 색상을 입력할 수 있음
  • 단순한 색상 필터(특정 색이 포함된 이미지만 걸러냄)와 달리, 이미지 전체의 색상 분포와 분위기를 분석해서 비슷한 색조/채도를 가진 이미지를 찾아냄
  • 프로세스는 사전 색인(이미지 색상 분석 및 벡터 저장) → 검색(사용자 입력 색상 벡터화 및 유사도 계산) → Top-K 결과 반환 순으로 이어짐

사전 색인 과정 : 검색 대상 이미지를 RGB로 읽어 Lab/HSV 색 공간으로 변환(인간 시각 인식에 더 가까운 색상 거리 계산 가능). KMeans 클러스터링으로 이미지에서 주요 색상 3~5개를 대표값으로 추출. 추출된 색상값을 벡터로 변환해 FAISS/Qdrant에 저장

검색 과정 : 사용자가 입력한 색상이나 업로드한 이미지를 동일한 방식으로 색상 추출 및 벡터화. 저장된 이미지 색상 벡터들과 유클리드 거리로 유사도를 계산하고 가장 가까운 Top-K 결과를 반환. Lab 색 공간에서는 L/a/b 채널에 가중치를 달리 적용해 색조 차이와 밝기 차이의 영향을 조절 가능

색상 필터와의 차이 : 색상 필터는 특정 색이 포함되어 있는지만 판단. 색상 검색은 이미지 전체 색상 분포를 벡터로 요약해 "비슷한 색조/채도/분위기"를 기준으로 탐색. 민트색 이미지로 검색하면 정확히 같은 민트가 아니어도 유사한 녹색 계열 이미지를 함께 추천할 수 있음