Files
sora_python/app/service/outfit_matcher/service.py

31 lines
1.5 KiB
Python
Raw Normal View History

2024-03-11 14:49:01 +08:00
import json
2024-03-18 14:17:43 +08:00
import os
from pprint import pprint
2024-03-11 10:58:34 +08:00
2024-03-11 14:49:01 +08:00
from app.service.outfit_matcher.dataset import FashionDataset
2024-03-12 12:11:26 +08:00
from app.service.outfit_matcher.outfit_evaluator import OutfitMaterTypeAware
2024-03-11 14:49:01 +08:00
if __name__ == '__main__':
with open("./test_param/recommendation_test.json", "r") as f:
param = json.load(f)
fashion_dataset = FashionDataset(param["database"])
2024-03-12 12:13:46 +08:00
service = OutfitMaterTypeAware()
2024-03-18 14:17:43 +08:00
best_list = []
bad_list = []
2024-03-12 12:11:26 +08:00
for item in param["query"]:
2024-03-11 14:49:01 +08:00
outfits = fashion_dataset.generate_outfit(item, param["topk"], param["max_outfits"])
2024-03-12 12:11:26 +08:00
scores = service.get_result(outfits)
2024-03-18 14:17:43 +08:00
# print(scores)
# print(len(scores))
best_outfits, best_scores = service.visualize(outfits, scores, param["topk"], best=True,
# output_path=os.path.join(r"E:\workspace\outfit_matcher\2024 SS Outfit", f"{item['item_name']}_best_{param['topk']}.png")
)
bad_outfits, bad_scores = service.visualize(outfits, scores, param["topk"], best=False,
# output_path=os.path.join(r"E:\workspace\outfit_matcher\2024 SS Outfit", f"{item['item_name']}_worst_{param['topk']}.png")
)
best_list.append({"best_outfits": best_outfits, "best_scores": best_scores})
bad_list.append({"bad_outfits": bad_outfits, "bad_scores": bad_scores})
pprint(best_list)
pprint(bad_list)