edit : 벡터파일 생성 관련 분리
This commit is contained in:
@@ -583,11 +583,6 @@ class VitModelType:
|
||||
l14_336 = "l14_336"
|
||||
|
||||
|
||||
class PartsType(str, Enum):
|
||||
bridge = VectorSearchItem.bridge
|
||||
hinge = VectorSearchItem.hinge
|
||||
|
||||
|
||||
class ImageGenerateReq(BaseModel):
|
||||
"""
|
||||
### [Request] image generate request
|
||||
@@ -663,7 +658,7 @@ class VectorGlassesImageResult(BaseModel):
|
||||
|
||||
|
||||
class VectorPartsImageResult(BaseModel):
|
||||
image : str = Field("", description='이미지 데이터', example='')
|
||||
image : str | None = Field("", description='이미지 데이터', example='')
|
||||
percents: float = Field(0.0, description='percents 값', example='')
|
||||
imageInfo : str = Field("", description='원본이미지 이름', example='')
|
||||
#===============================================================================
|
||||
|
||||
@@ -446,7 +446,7 @@ async def image_generator(request: Request, request_body_info: M.ImageGenerateRe
|
||||
|
||||
full_prompt = f"{request_body_info.prefix}, {request_body_info.prompt}" if request_body_info.prefix else f"{request_body_info.prompt}"
|
||||
|
||||
temp_image_path = gemini_image(full_prompt) #TODO(jwkim) imagen3 으로 변경예정
|
||||
temp_image_path = gemini_image(full_prompt)
|
||||
|
||||
if os.path.exists(temp_image_path):
|
||||
image_data = image_to_base64_string(temp_image_path)
|
||||
@@ -483,7 +483,7 @@ async def vactor_vit_input_glasses_img_data(request: Request, request_body_info:
|
||||
> 입력이미지(inputImage)는 base64로 변환된 데이터 입력
|
||||
|
||||
### Output
|
||||
> - 결과(vectorResult)는 base64로 변환된 데이터(image), 유사도(percents)가 쌍으로 나오며, 요청한 searchNum 갯수에 맞춰서 결과가 나옴
|
||||
> - 결과(vectorResult)는 base64로 변환된 데이터(image), 유사도(percents), 파츠정보(parts)가 쌍으로 나오며, 요청한 searchNum 갯수에 맞춰서 결과가 나옴
|
||||
> - queryImage는 Input시 입력한 inputImage 이미지 데이터
|
||||
|
||||
### Options
|
||||
@@ -534,7 +534,9 @@ async def vactor_vit_input_glasses_img_data(request: Request, request_body_info:
|
||||
vector_image_results = []
|
||||
for img, percents, parts in zip(result_image_paths, result_percents, result_parts):
|
||||
|
||||
b64_data = image_to_base64_string(img)
|
||||
b64_data = None
|
||||
if os.path.exists(img):
|
||||
b64_data = image_to_base64_string(img)
|
||||
float_percent = float(percents)
|
||||
|
||||
info = M.VectorGlassesImageResult(image=b64_data, percents=float_percent, imageInfo=os.path.split(img)[-1], parts=parts)
|
||||
@@ -568,7 +570,8 @@ async def vactor_vit_input_parts_img_data(request: Request, request_body_info: M
|
||||
> 입력된 이미지로 vector 검색 그후 결과 이미지데이터 return
|
||||
|
||||
### Input
|
||||
> 입력이미지(inputImage)는 파츠이미지 이름 (확장자 포함)
|
||||
> 입력이미지(inputImage)는 파츠 이미지파일 이름 (확장자 포함)
|
||||
> ⚠️ /vectorImageSearch/vit/inputImage/data/glasses API response인 parts 값중 하나를 선택
|
||||
|
||||
### Output
|
||||
> - 결과(vectorResult)는 base64로 변환된 데이터(image), 유사도(percents)가 쌍으로 나오며, 요청한 searchNum 갯수에 맞춰서 결과가 나옴
|
||||
@@ -592,7 +595,7 @@ async def vactor_vit_input_parts_img_data(request: Request, request_body_info: M
|
||||
raise Exception(f"indexType is invalid (current value = {request_body_info.indexType})")
|
||||
|
||||
glass_name = f"{request_body_info.inputImage.split('_')[0]}_{request_body_info.inputImage.split('_')[1]}"
|
||||
query_image_path = os.path.join(VECTOR_IMG_LIST_PATH, glass_name, ImageDepths.parts, request_body_info.inputImage)
|
||||
query_image_path = os.path.join(IMG_LIST_PATH, glass_name, ImageDepths.parts, request_body_info.inputImage)
|
||||
query_image_data = image_to_base64_string(query_image_path)
|
||||
|
||||
vector_request_data = {'query_image_path' : query_image_path,
|
||||
@@ -617,7 +620,9 @@ async def vactor_vit_input_parts_img_data(request: Request, request_body_info: M
|
||||
vector_image_results = []
|
||||
for img, percents in zip(result_image_paths, result_percents):
|
||||
|
||||
b64_data = image_to_base64_string(img)
|
||||
b64_data = None
|
||||
if os.path.exists(img):
|
||||
b64_data = image_to_base64_string(img)
|
||||
float_percent = float(percents)
|
||||
|
||||
info = M.VectorPartsImageResult(image=b64_data, percents=float_percent, imageInfo=os.path.split(img)[-1])
|
||||
|
||||
Reference in New Issue
Block a user