add type aware method and use it

This commit is contained in:
pangkaicheng
2024-03-12 12:11:26 +08:00
parent 077066607d
commit b2be4484a5
3 changed files with 1134 additions and 358 deletions

View File

@@ -1,19 +1,51 @@
import os
import requests import requests
import json
from PIL import Image from PIL import Image
import cv2 import cv2
import numpy as np import numpy as np
import tritonclient.http as httpclient import tritonclient.http as httpclient
import torch import torch
from matplotlib import pyplot as plt, image as mpimg from matplotlib import pyplot as plt, image as mpimg
from torchvision import transforms
from foco import extract_main_colors from foco import extract_main_colors
TRITON_IP_DEFAULT = "0.0.0.0"
class OutfitMatcher(object):
def __init__(self):
self.tritonclient = httpclient.InferenceServerClient(url="10.1.1.240:10010")
def imnormalize(img, mean, std, to_rgb=True): @staticmethod
def pad_array(input_value, value=0):
"""pad List of Array into same batch size
Args:
input_value: List of numpy arrary need to be padded
Returns:
Tensor: [batch_dim, max_dim, original_tensor_size]
"""
max_dim = max([len(x) for x in input_value])
mask = np.zeros((len(input_value), max_dim), dtype=np.float32)
# Pad each array
padded_arrays = []
for i, array in enumerate(input_value):
# Compute padding amount along the pad dimension
pad_dim = max_dim - array.shape[0]
consistent_shape = array.shape[1:]
pad_widths = [(0, pad_dim)] + [(0, 0)] * len(consistent_shape)
padded_array = np.pad(array, pad_widths, mode='constant', constant_values=value)
padded_arrays.append(padded_array)
mask[i, array.shape[0]:] = float("-inf")
# Stack the padded arrays and change the dimension
batched_arrays = np.stack(padded_arrays, axis=0)
return batched_arrays, mask
@staticmethod
def imnormalize(img, mean, std, to_rgb=True):
"""Normalize an image with mean and std. """Normalize an image with mean and std.
Args: Args:
@@ -34,152 +66,7 @@ def imnormalize(img, mean, std, to_rgb=True):
cv2.subtract(img, mean, img) # inplace cv2.subtract(img, mean, img) # inplace
cv2.multiply(img, stdinv, img) # inplace cv2.multiply(img, stdinv, img) # inplace
return img return img
def visualize(self, outfits, scores, topk=5, best=True, output_path=None):
def load_image(img_path):
if 'http' in img_path:
file = requests.get(img_path)
image = cv2.imdecode(np.fromstring(file.content, np.uint8), 1)
image = Image.fromarray(image.astype('uint8'), 'RGB')
else:
image = Image.open(img_path).convert('RGB')
return np.array(image)
def resize_image(img):
"""
Args:
img: ndarray (height, width, channel)
"""
resized_img = cv2.resize(img, (224, 224), dst=None, interpolation=1)
return resized_img
def pad_array(input_value):
"""pad List of Array into same batch size
Args:
input_value: List of numpy arrary need to be padded
Returns:
Tensor: [batch_dim, max_dim, original_tensor_size]
"""
max_dim = max([len(x) for x in input_value])
mask = np.zeros((len(input_value), max_dim), dtype=np.float32)
# Pad each array
padded_arrays = []
for i, array in enumerate(input_value):
# Compute padding amount along the pad dimension
pad_dim = max_dim - array.shape[0]
consistent_shape = array.shape[1:]
pad_widths = [(0, pad_dim)] + [(0, 0)] * len(consistent_shape)
padded_array = np.pad(array, pad_widths, mode='constant', constant_values=0)
padded_arrays.append(padded_array)
mask[i, array.shape[0]:] = float("-inf")
# Stack the padded arrays and change the dimension
batched_arrays = np.stack(padded_arrays, axis=0)
return batched_arrays, mask
def extract_color(image, img_path):
# TODO: replace to vector database
relative_path, filename = os.path.split(img_path)
basename = filename.split(".")[0]
color_file = os.path.join(r"D:\PhD_Study\trinity_client\application\outfit_matcher\color",
basename + ".npy")
if os.path.exists(color_file):
color = np.load(color_file)
else:
color = extract_main_colors(image)
np.save(color_file, color)
return color
def preprocess(outfits):
outfit_images = []
outfit_colors = []
for outfit in outfits:
images = []
colors = []
for item in outfit:
image = load_image(item["image_path"])
image = resize_image(image)
normalized_image = imnormalize(image,
mean=np.array([208.32996145, 201.28227452, 198.47047691], dtype=np.float32),
std=np.array([75.48939648, 80.47423057, 82.21144189], dtype=np.float32))
images.append(normalized_image.transpose(2, 0, 1))
color = extract_color(image, item["image_path"])
colors.append(color)
images = np.stack(images, axis=0)
outfit_images.append(images) # List[(items, 3, 224, 224)]
colors = np.stack(colors, axis=0)
outfit_colors.append(colors)
outfit_images, mask = pad_array(outfit_images)
outfit_colors, _ = pad_array(outfit_colors)
return outfit_images, outfit_colors, mask
def evaluate_outfits(outfits):
"""Input outfits structure and output scores.
Args:
outfits: outfits to be evaluated.
Example:
[
[
{
"item_name": "MSE_57987",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_57987.jpg",
"mapped_cate": "bottoms"
},
{
"item_name": "MPO_SP7712",
"semantic_category": "TOP/TANK",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7712.jpg",
"mapped_cate": "tops"
},
{
"item_name": "MWSS27195",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27195.jpg",
"mapped_cate": "outerwear"
}
],
...
]
Returns:
scores: List of float
"""
# start = time.time()
image, color, mask = preprocess(outfits)
# print(start - time.time())
client = httpclient.InferenceServerClient(url="localhost:8000")
# transformed_img = image.astype(np.float32)
# 输入集
inputs = [
httpclient.InferInput("input__0", image.shape, datatype="FP32"),
httpclient.InferInput("input__1", color.shape, datatype="FP32"),
httpclient.InferInput("input__2", mask.shape, datatype="FP32"),
]
inputs[0].set_data_from_numpy(image.astype(np.float32), binary_data=True)
inputs[1].set_data_from_numpy(color.astype(np.float32), binary_data=True)
inputs[2].set_data_from_numpy(mask.astype(np.float32), binary_data=True)
# 输出集
outputs = [
httpclient.InferRequestedOutput("output__0", binary_data=True),
]
results = client.infer(model_name="outfit_matcher_hon", inputs=inputs, outputs=outputs)
# 推理
# 取结果
scores = torch.from_numpy(results.as_numpy("output__0"))
return scores # Shape (N, 1)
def visualize(outfits, scores, topk=5, best=True, output_path=None):
# 将outfits和scores按照scores的值进行排序 # 将outfits和scores按照scores的值进行排序
sorted_indices = np.argsort(-scores.flatten() if best else scores.flatten())[:topk] # 使用负号进行降序排序 sorted_indices = np.argsort(-scores.flatten() if best else scores.flatten())[:topk] # 使用负号进行降序排序
outfits = [outfits[i] for i in sorted_indices] outfits = [outfits[i] for i in sorted_indices]
@@ -224,8 +111,183 @@ def visualize(outfits, scores, topk=5, best=True, output_path=None):
plt.show() plt.show()
if __name__ == '__main__': class OutfitMatcherHon(OutfitMatcher):
with open("test_input.json", "r") as f: def __init__(self):
outfits = json.load(f) super().__init__()
scores = evaluate_outfits(outfits)
print(scores) @staticmethod
def load_image(img_path):
if 'http' in img_path:
file = requests.get(img_path)
image = cv2.imdecode(np.fromstring(file.content, np.uint8), 1)
image = Image.fromarray(image.astype('uint8'), 'RGB')
else:
image = Image.open(img_path).convert('RGB')
return np.array(image)
@staticmethod
def resize_image(img):
"""
Args:
img: ndarray (height, width, channel)
"""
resized_img = cv2.resize(img, (224, 224), dst=None, interpolation=1)
return resized_img
def preprocess(self, outfits):
outfit_images = []
outfit_colors = []
for outfit in outfits:
images = []
colors = []
for item in outfit:
image = self.load_image(item["image_path"])
image = self.resize_image(image)
normalized_image = self.imnormalize(image,
mean=np.array([208.32996145, 201.28227452, 198.47047691],
dtype=np.float32),
std=np.array([75.48939648, 80.47423057, 82.21144189],
dtype=np.float32))
images.append(normalized_image.transpose(2, 0, 1))
color = extract_main_colors(image)
colors.append(color)
images = np.stack(images, axis=0)
outfit_images.append(images) # List[(items, 3, 224, 224)]
colors = np.stack(colors, axis=0)
outfit_colors.append(colors)
outfit_images, mask = self.pad_array(outfit_images)
outfit_colors, _ = self.pad_array(outfit_colors)
return outfit_images, outfit_colors, mask
def get_result(self, outfits):
# start = time.time()
image, color, mask = self.preprocess(outfits)
# print(start - time.time())
# transformed_img = image.astype(np.float32)
# 输入集
inputs = [
httpclient.InferInput("input__0", image.shape, datatype="FP32"),
httpclient.InferInput("input__1", color.shape, datatype="FP32"),
httpclient.InferInput("input__2", mask.shape, datatype="FP32"),
]
inputs[0].set_data_from_numpy(image.astype(np.float32), binary_data=True)
inputs[1].set_data_from_numpy(color.astype(np.float32), binary_data=True)
inputs[2].set_data_from_numpy(mask.astype(np.float32), binary_data=True)
# 输出集
outputs = [
httpclient.InferRequestedOutput("output__0", binary_data=True),
]
results = self.tritonclient.infer(model_name="outfit_matcher_hon", inputs=inputs, outputs=outputs)
# 推理
# 取结果
inference_output1 = torch.from_numpy(results.as_numpy("output__0"))
return inference_output1 # Shape (N, 1)
class OutfitMaterTypeAware(OutfitMatcher):
base_fashion_categories = [
'accessories', 'all-body', 'bags', 'bottoms', 'hats', 'jewellery',
'outerwear', 'scarves', 'shoes', 'sunglasses', 'tops'
]
def __init__(self):
super().__init__()
@staticmethod
def load_image(img_path):
if 'http' in img_path:
file = requests.get(img_path)
image = cv2.imdecode(np.fromstring(file.content, np.uint8), 1)
image = Image.fromarray(image.astype('uint8'), 'RGB')
else:
image = Image.open(img_path).convert('RGB')
return image
@staticmethod
def resize_image(img):
"""
Args:
img: ndarray (height, width, channel)
"""
image_transforms = transforms.Compose([
transforms.Resize(112),
transforms.CenterCrop(112),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225]),
])
resized_img = image_transforms(img).numpy()
return resized_img
def preprocess(self, outfits):
outfit_images = []
outfit_categories = []
for outfit in outfits:
images = []
categories = []
for item in outfit:
image = self.load_image(item["image_path"])
image = self.resize_image(image)
images.append(image)
category = self.base_fashion_categories.index(item["mapped_cate"])
categories.append(category)
images = np.stack(images, axis=0)
outfit_images.append(images) # List[(items, 3, 224, 224)]
categories = np.array(categories)
outfit_categories.append(categories) # List[(items)]
outfit_images, mask = self.pad_array(outfit_images, value=0)
outfit_categories, _ = self.pad_array(outfit_categories, value=len(self.base_fashion_categories))
return outfit_images, outfit_categories, mask
def get_result(self, outfits):
"""Input outfits structure and output scores.
Args:
outfits: outfits to be evaluated.
Example:
[
[
{
"item_name": "MSE_57987",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_57987.jpg",
"mapped_cate": "bottoms"
},
{
"item_name": "MPO_SP7712",
"semantic_category": "TOP/TANK",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7712.jpg",
"mapped_cate": "tops"
},
{
"item_name": "MWSS27195",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27195.jpg",
"mapped_cate": "outerwear"
}
],
...
]
Returns:
scores: List of float
"""
image, category, mask = self.preprocess(outfits)
client = httpclient.InferenceServerClient(url="localhost:8000")
# 输入集
inputs = [
httpclient.InferInput("input__0", image.shape, datatype="FP32"),
httpclient.InferInput("input__1", category.shape, datatype="INT16"),
httpclient.InferInput("input__2", mask.shape, datatype="FP32"),
]
inputs[0].set_data_from_numpy(image.astype(np.float32), binary_data=True)
inputs[1].set_data_from_numpy(category.astype(np.int16), binary_data=True)
inputs[2].set_data_from_numpy(mask.astype(np.float32), binary_data=True)
# 输出集
outputs = [
httpclient.InferRequestedOutput("output__0", binary_data=True),
]
results = client.infer(model_name="outfit_matcher_type_aware", inputs=inputs, outputs=outputs)
# 推理
# 取结果
scores = torch.from_numpy(results.as_numpy("output__0"))
return scores # Shape (N, 1)

View File

@@ -1,160 +1,25 @@
import json import json
import os
import torch
import torch.nn.functional as F
import tritonclient.http as httpclient
import requests
import cv2
import numpy as np
from PIL import Image
from tqdm import tqdm
from app.service.outfit_matcher.dataset import FashionDataset from app.service.outfit_matcher.dataset import FashionDataset
from app.service.outfit_matcher.foco import extract_main_colors from app.service.outfit_matcher.outfit_evaluator import OutfitMaterTypeAware
from app.service.outfit_matcher.outfit_evaluator import evaluate_outfits, visualize
class OutfitMatcherHon:
def __init__(self, outfits):
self.outfits = outfits
self.tritonclient = httpclient.InferenceServerClient(url="10.1.1.240:10010")
@staticmethod
def imnormalize(img, mean, std, to_rgb=True):
"""Normalize an image with mean and std.
Args:
img (ndarray): Image to be normalized.
mean (ndarray): The mean to be used for normalize.
std (ndarray): The std to be used for normalize.
to_rgb (bool): Whether to convert to rgb.
Returns:
ndarray: The normalized image.
"""
img = img.copy().astype(np.float32)
assert img.dtype != np.uint8
mean = np.float64(mean.reshape(1, -1))
stdinv = 1 / np.float64(std.reshape(1, -1))
if to_rgb:
cv2.cvtColor(img, cv2.COLOR_BGR2RGB, img) # inplace
cv2.subtract(img, mean, img) # inplace
cv2.multiply(img, stdinv, img) # inplace
return img
@staticmethod
def load_image(img_path):
if 'http' in img_path:
file = requests.get(img_path)
image = cv2.imdecode(np.fromstring(file.content, np.uint8), 1)
image = Image.fromarray(image.astype('uint8'), 'RGB')
else:
image = Image.open(img_path).convert('RGB')
return np.array(image)
@staticmethod
def resize_image(img):
"""
Args:
img: ndarray (height, width, channel)
"""
resized_img = cv2.resize(img, (224, 224), dst=None, interpolation=1)
return resized_img
@staticmethod
def pad_array(input_value):
"""pad List of Array into same batch size
Args:
input_value: List of numpy arrary need to be padded
Returns:
Tensor: [batch_dim, max_dim, original_tensor_size]
"""
max_dim = max([len(x) for x in input_value])
mask = np.zeros((len(input_value), max_dim), dtype=np.float32)
# Pad each array
padded_arrays = []
for i, array in enumerate(input_value):
# Compute padding amount along the pad dimension
pad_dim = max_dim - array.shape[0]
consistent_shape = array.shape[1:]
pad_widths = [(0, pad_dim)] + [(0, 0)] * len(consistent_shape)
padded_array = np.pad(array, pad_widths, mode='constant', constant_values=0)
padded_arrays.append(padded_array)
mask[i, array.shape[0]:] = float("-inf")
# Stack the padded arrays and change the dimension
batched_arrays = np.stack(padded_arrays, axis=0)
return batched_arrays, mask
def preprocess(self):
outfit_images = []
outfit_colors = []
for outfit in self.outfits:
images = []
colors = []
for item in outfit:
image = self.load_image(item["image_path"])
image = self.resize_image(image)
normalized_image = self.imnormalize(image,
mean=np.array([208.32996145, 201.28227452, 198.47047691], dtype=np.float32),
std=np.array([75.48939648, 80.47423057, 82.21144189], dtype=np.float32))
images.append(normalized_image.transpose(2, 0, 1))
color = extract_main_colors(image)
colors.append(color)
images = np.stack(images, axis=0)
outfit_images.append(images) # List[(items, 3, 224, 224)]
colors = np.stack(colors, axis=0)
outfit_colors.append(colors)
outfit_images, mask = self.pad_array(outfit_images)
outfit_colors, _ = self.pad_array(outfit_colors)
return outfit_images, outfit_colors, mask
def get_result(self):
# start = time.time()
image, color, mask = self.preprocess()
# print(start - time.time())
# transformed_img = image.astype(np.float32)
# 输入集
inputs = [
httpclient.InferInput("input__0", image.shape, datatype="FP32"),
httpclient.InferInput("input__1", color.shape, datatype="FP32"),
httpclient.InferInput("input__2", mask.shape, datatype="FP32"),
]
inputs[0].set_data_from_numpy(image.astype(np.float32), binary_data=True)
inputs[1].set_data_from_numpy(color.astype(np.float32), binary_data=True)
inputs[2].set_data_from_numpy(mask.astype(np.float32), binary_data=True)
# 输出集
outputs = [
httpclient.InferRequestedOutput("output__0", binary_data=True),
]
results = self.tritonclient.infer(model_name="outfit_matcher_hon", inputs=inputs, outputs=outputs)
# 推理
# 取结果
inference_output1 = torch.from_numpy(results.as_numpy("output__0"))
return inference_output1 # Shape (N, 1)
if __name__ == '__main__': if __name__ == '__main__':
with open("./test_param/recommendation_test.json", "r") as f: with open("./test_param/recommendation_test.json", "r") as f:
param = json.load(f) param = json.load(f)
fashion_dataset = FashionDataset(param["database"]) fashion_dataset = FashionDataset(param["database"])
for item in tqdm(param["query"]): for item in param["query"]:
outfits = fashion_dataset.generate_outfit(item, param["topk"], param["max_outfits"]) outfits = fashion_dataset.generate_outfit(item, param["topk"], param["max_outfits"])
service = OutfitMatcherHon(outfits=outfits) service = OutfitMaterTypeAware()
scores = service.get_result() scores = service.get_result(outfits)
visualize(outfits, scores, param["topk"], best=True, print(scores)
output_path=os.path.join( # service.visualize(outfits, scores, param["topk"], best=True,
r"E:\workspace\outfit_matcher\2024 SS Outfit", # output_path=os.path.join(
f"{item['item_name']}_best_{param['topk']}.png" # r"E:\workspace\outfit_matcher\2024 SS Outfit",
)) # f"{item['item_name']}_best_{param['topk']}.png"
visualize(outfits, scores, param["topk"], best=False, # ))
output_path=os.path.join( # service.visualize(outfits, scores, param["topk"], best=False,
r"E:\workspace\outfit_matcher\2024 SS Outfit", # output_path=os.path.join(
f"{item['item_name']}_worst_{param['topk']}.png" # r"E:\workspace\outfit_matcher\2024 SS Outfit",
)) # f"{item['item_name']}_worst_{param['topk']}.png"
a = 1 # ))

View File

@@ -0,0 +1,849 @@
{
"topk": 5,
"max_outfits": 100,
"query": [
{
"item_name": "MSE_58107",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58107.jpg"
},
{
"item_name": "MKTS27047",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27047.jpg"
},
{
"item_name": "MKTS27028",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27028.jpg"
},
{
"item_name": "MSE_58057",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58057.jpg"
},
{
"item_name": "MSE_58495",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58495.jpg"
}
],
"database":
[
{
"item_name": "MKTS27017",
"semantic_category": "OUTERWEAR/WINDBREAKER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27017.jpg"
},
{
"item_name": "MKTS27047",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27047.jpg"
},
{
"item_name": "MKTS27000",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27000.jpg"
},
{
"item_name": "MKTS27001",
"semantic_category": "BOTTOM/SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27001.jpg"
},
{
"item_name": "MZOS27178",
"semantic_category": "KNIT/CARDIGAN",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MZOS27178.jpg"
},
{
"item_name": "MZOS27179",
"semantic_category": "KNIT/KNIT TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MZOS27179.jpg"
},
{
"item_name": "MWSS27184",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27184.jpg"
},
{
"item_name": "MWSS27191",
"semantic_category": "OUTERWEAR/TWIN SET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27191.jpg"
},
{
"item_name": "MWSS27193",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27193.jpg"
},
{
"item_name": "MWSS27195",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27195.jpg"
},
{
"item_name": "MWSS27200",
"semantic_category": "KNIT/VEST",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27200.jpg"
},
{
"item_name": "MWSS27209",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27209.jpg"
},
{
"item_name": "MWSS27210",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27210.jpg"
},
{
"item_name": "MWSS27211",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27211.jpg"
},
{
"item_name": "MWSS27212",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MWSS27212.jpg"
},
{
"item_name": "MKTS27008",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27008.jpg"
},
{
"item_name": "MKTS27009",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27009.jpg"
},
{
"item_name": "MKTS27010",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27010.jpg"
},
{
"item_name": "MKTS27012",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27012.jpg"
},
{
"item_name": "MKTS27013",
"semantic_category": "BOTTOM/SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27013.jpg"
},
{
"item_name": "MKTS27014",
"semantic_category": "ONE PIECE/TWIN SET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27014.jpg"
},
{
"item_name": "MKTS27015",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27015.jpg"
},
{
"item_name": "MKTS27016",
"semantic_category": "BOTTOM/SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27016.jpg"
},
{
"item_name": "MKTS27027",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27027.jpg"
},
{
"item_name": "MKTS27028",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27028.jpg"
},
{
"item_name": "MKTS27029",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27029.jpg"
},
{
"item_name": "MKTS27030",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27030.jpg"
},
{
"item_name": "MKTS27031",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27031.jpg"
},
{
"item_name": "MKTS27034",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27034.jpg"
},
{
"item_name": "MKTS27035",
"semantic_category": "ONE PIECE/TWIN SET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27035.jpg"
},
{
"item_name": "MKTS27038",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27038.jpg"
},
{
"item_name": "MKTS27039",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27039.jpg"
},
{
"item_name": "MKTS27040",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27040.jpg"
},
{
"item_name": "MKTS27045",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27045.jpg"
},
{
"item_name": "MKTS27046",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27046.jpg"
},
{
"item_name": "MKTS27050",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27050.jpg"
},
{
"item_name": "MKTS27059",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27059.jpg"
},
{
"item_name": "MKTS27061",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27061.jpg"
},
{
"item_name": "MKTS27062",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27062.jpg"
},
{
"item_name": "MKTS27066",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27066.jpg"
},
{
"item_name": "MKTS27067",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27067.jpg"
},
{
"item_name": "MKTS27068",
"semantic_category": "ONE PIECE/TWIN SET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27068.jpg"
},
{
"item_name": "MKTS27002",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27002.jpg"
},
{
"item_name": "MKTS27003",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27003.jpg"
},
{
"item_name": "MKTS27004",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27004.jpg"
},
{
"item_name": "MKTS27011",
"semantic_category": "TOP/VEST",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27011.jpg"
},
{
"item_name": "MKTS27018",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27018.jpg"
},
{
"item_name": "MKTS27019",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27019.jpg"
},
{
"item_name": "MKTS27058",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27058.jpg"
},
{
"item_name": "MLSS27101",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27101.jpg"
},
{
"item_name": "MLSS27102",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27102.jpg"
},
{
"item_name": "MLSS27103",
"semantic_category": "OUTERWEAR/GILET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27103.jpg"
},
{
"item_name": "MLSS27104",
"semantic_category": "BOTTOM/SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27104.jpg"
},
{
"item_name": "MLSS27107",
"semantic_category": "JEANS/JEANS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27107.jpg"
},
{
"item_name": "MLSS27109",
"semantic_category": "JEANS/JEANS JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27109.jpg"
},
{
"item_name": "MLSS27110",
"semantic_category": "JEANS/JEANS JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27110.jpg"
},
{
"item_name": "MLSS27111",
"semantic_category": "JEANS/JEANS PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27111.jpg"
},
{
"item_name": "MLSS27112",
"semantic_category": "JEANS/JEANS PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27112.jpg"
},
{
"item_name": "MLSS27113",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27113.jpg"
},
{
"item_name": "MLSS27119",
"semantic_category": "JEANS/JEANS SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27119.jpg"
},
{
"item_name": "MLSS27122",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27122.jpg"
},
{
"item_name": "MLSS27123",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27123.jpg"
},
{
"item_name": "MLSS27128",
"semantic_category": "JEANS/JEANS JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27128.jpg"
},
{
"item_name": "MLSS27129",
"semantic_category": "JEANS/JEANS SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27129.jpg"
},
{
"item_name": "MLSS27132",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27132.jpg"
},
{
"item_name": "MLSS27133",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27133.jpg"
},
{
"item_name": "MLSS27136",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27136.jpg"
},
{
"item_name": "MLSS27137",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27137.jpg"
},
{
"item_name": "MLSS27140",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27140.jpg"
},
{
"item_name": "MLSS27141",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27141.jpg"
},
{
"item_name": "MLSS27142",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27142.jpg"
},
{
"item_name": "MLSS27145",
"semantic_category": "OUTERWEAR/WINDBREAKER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27145.jpg"
},
{
"item_name": "MLSS27146",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27146.jpg"
},
{
"item_name": "MLSS27147",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27147.jpg"
},
{
"item_name": "MLSS27148",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27148.jpg"
},
{
"item_name": "MLSS27149",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27149.jpg"
},
{
"item_name": "MLSS27150",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27150.jpg"
},
{
"item_name": "MLSS27152",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27152.jpg"
},
{
"item_name": "MLSS27154",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27154.jpg"
},
{
"item_name": "MLSS27156",
"semantic_category": "TOP/VEST",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27156.jpg"
},
{
"item_name": "MLSS27157",
"semantic_category": "OUTERWEAR/WINDBREAKER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27157.jpg"
},
{
"item_name": "MLSS27159",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27159.jpg"
},
{
"item_name": "MLSS27160",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27160.jpg"
},
{
"item_name": "MLSS27161",
"semantic_category": "KNIT/CARDIGAN",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27161.jpg"
},
{
"item_name": "MLSS27162",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27162.jpg"
},
{
"item_name": "MLSS27167",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27167.jpg"
},
{
"item_name": "MLSS27173",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27173.jpg"
},
{
"item_name": "MLSS27174",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27174.jpg"
},
{
"item_name": "MLSS27175",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27175.jpg"
},
{
"item_name": "MLSS27176",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27176.jpg"
},
{
"item_name": "MKTS27073",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MKTS27073.jpg"
},
{
"item_name": "MLSS27226",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MLSS27226.jpg"
},
{
"item_name": "MPO_SP7685",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7685.jpg"
},
{
"item_name": "MPO_SP7686",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7686.jpg"
},
{
"item_name": "MPO_SP7687",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7687.jpg"
},
{
"item_name": "MPO_SP7692",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7692.jpg"
},
{
"item_name": "MPO_SP7693",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7693.jpg"
},
{
"item_name": "MPO_SP7694",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7694.jpg"
},
{
"item_name": "MPO_SP7696",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7696.jpg"
},
{
"item_name": "MPO_SP7697",
"semantic_category": "JEANS/JEANS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7697.jpg"
},
{
"item_name": "MPO_SP7704",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7704.jpg"
},
{
"item_name": "MPO_SP7705",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7705.jpg"
},
{
"item_name": "MPO_SP7706",
"semantic_category": "JEANS/JEANS JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7706.jpg"
},
{
"item_name": "MPO_SP7711",
"semantic_category": "TOP/VEST",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7711.jpg"
},
{
"item_name": "MPO_SP7712",
"semantic_category": "TOP/TANK",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7712.jpg"
},
{
"item_name": "MPO_SP7717",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7717.jpg"
},
{
"item_name": "MPO_SP7722",
"semantic_category": "TOP/TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7722.jpg"
},
{
"item_name": "MPO_SP7723",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7723.jpg"
},
{
"item_name": "MPO_SP7726",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7726.jpg"
},
{
"item_name": "MPO_SP7729",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7729.jpg"
},
{
"item_name": "MPO_SP7731",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7731.jpg"
},
{
"item_name": "MPO_SP7732",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7732.jpg"
},
{
"item_name": "MPO_SP7735",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MPO_SP7735.jpg"
},
{
"item_name": "MSE_58197",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58197.jpg"
},
{
"item_name": "MSE_58198",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58198.jpg"
},
{
"item_name": "MSE_58199",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58199.jpg"
},
{
"item_name": "MSE_58112",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58112.jpg"
},
{
"item_name": "MSE_58114",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58114.jpg"
},
{
"item_name": "MSE_58241",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58241.jpg"
},
{
"item_name": "MSE_57987",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_57987.jpg"
},
{
"item_name": "MSE_57988",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_57988.jpg"
},
{
"item_name": "MSE_58203",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58203.jpg"
},
{
"item_name": "MSE_58106",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58106.jpg"
},
{
"item_name": "MSE_58107",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58107.jpg"
},
{
"item_name": "MSE_58132",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58132.jpg"
},
{
"item_name": "MSE_58133",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58133.jpg"
},
{
"item_name": "MSE_58057",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58057.jpg"
},
{
"item_name": "MSE_58058",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58058.jpg"
},
{
"item_name": "MSE_58222",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58222.jpg"
},
{
"item_name": "MSE_58317",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58317.jpg"
},
{
"item_name": "MSE_58045",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58045.jpg"
},
{
"item_name": "MSE_58275",
"semantic_category": "JEANS/JEANS DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58275.jpg"
},
{
"item_name": "MSE_58276",
"semantic_category": "JEANS/JEANS JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58276.jpg"
},
{
"item_name": "MSE_58277",
"semantic_category": "JEANS/JEANS SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58277.jpg"
},
{
"item_name": "MSE_58183",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58183.jpg"
},
{
"item_name": "MSE_58184",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58184.jpg"
},
{
"item_name": "MSE_58185",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58185.jpg"
},
{
"item_name": "MSE_58188",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58188.jpg"
},
{
"item_name": "MSE_54385",
"semantic_category": "BOTTOM/PANTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_54385.jpg"
},
{
"item_name": "MSE_56720",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_56720.jpg"
},
{
"item_name": "MSE_58174",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58174.jpg"
},
{
"item_name": "MSE_58044",
"semantic_category": "OUTERWEAR/JACKET",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58044.jpg"
},
{
"item_name": "MSE_58361",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58361.jpg"
},
{
"item_name": "MSE_58495",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58495.jpg"
},
{
"item_name": "MSE_58536",
"semantic_category": "ACCESSORY/BAG",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58536.jpg"
},
{
"item_name": "MSE_58653",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58653.jpg"
},
{
"item_name": "MSE_58287",
"semantic_category": "BOTTOM/SHORTS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58287.jpg"
},
{
"item_name": "MSE_58289",
"semantic_category": "OUTERWEAR/BLAZER",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58289.jpg"
},
{
"item_name": "MSE_58323",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58323.jpg"
},
{
"item_name": "MSE_58421",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58421.jpg"
},
{
"item_name": "MSE_58451",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58451.jpg"
},
{
"item_name": "MSE_58473",
"semantic_category": "KNIT/KNIT TOP",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58473.jpg"
},
{
"item_name": "MSE_58498",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58498.jpg"
},
{
"item_name": "MSE_58499",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58499.jpg"
},
{
"item_name": "MSE_58510",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58510.jpg"
},
{
"item_name": "MSE_58516",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58516.jpg"
},
{
"item_name": "MSE_58518",
"semantic_category": "BOTTOM/SKIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58518.jpg"
},
{
"item_name": "MSE_58530",
"semantic_category": "ONE PIECE/DRESS",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58530.jpg"
},
{
"item_name": "MSE_58540",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58540.jpg"
},
{
"item_name": "MSE_58547",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58547.jpg"
},
{
"item_name": "MSE_58618",
"semantic_category": "TOP/BLOUSE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58618.jpg"
},
{
"item_name": "MSE_58655",
"semantic_category": "TOP/SHIRT",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58655.jpg"
},
{
"item_name": "MSE_58658",
"semantic_category": "TOP/TEE",
"image_path": "D:\\PhD_Study\\MIXI\\mitu\\image\\2024 SS\\MSE_58658.jpg"
}
]
}