diff --git a/.gitignore b/.gitignore index 1837c03..834faba 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,8 @@ .env .vscode/ app/core/__pycache__/ +data/db +data/image_data app/core/data/ .idea/ *.sqlite3 diff --git a/README.md b/README.md index bcef194..1a66294 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,8 @@ Checklist ```bash export GOOGLE_API_KEY="" ``` -3. Ensure root path added to PYTHONPATH \ No newline at end of file +3. Ensure root path added to PYTHONPATH + +4. Download Image data from [here](https://hkaidlab-my.sharepoint.com/:u:/g/personal/kcpang_aidlab_hk/EW4Ve7pPWgZJn-781tdjkCQBaafaGMBKcDXXzHcR1QILzQ?e=FU7RfK) and put it in "./data/image_data" + +5. Download chromadb local database file from [here](https://hkaidlab-my.sharepoint.com/:f:/g/personal/kcpang_aidlab_hk/EsEZNodPI0hBuKDTVDlL1l0BO0Jwt4oVO23bOzVjO3FaPQ?e=TgjP4D) and put it in "./data/db" \ No newline at end of file diff --git a/data/stylist_guide/crystal_en.md b/data/stylist_guide/crystal_en.md new file mode 100644 index 0000000..574ff59 --- /dev/null +++ b/data/stylist_guide/crystal_en.md @@ -0,0 +1,42 @@ +# Outfit Style Guide + +This guide outlines the preferred styling logic, brand affinities, patterns, and structure for Crystal's outfits, emphasizing **bold pattern mixing** balanced by **pure accessories**. + +## I. Core Preferences and Prohibitions + +| Category | Preference (✔️) | Prohibition (❌) | +| :--- | :--- | :--- | +| **Brands/Material** | **Sacai** brand; **Denim** items | - | +| **Patterns** | **Plaid, Stripes, Floral, Leopard Print**; Active pattern clashing (min 2) | Monochromatic or single-pattern outfits | +| **Layering** | Max **2 items** on the upper body; Pattern mixing replaces layering | Excessive layering (叠穿) | +| **Fit/Silhouette** | Accepts **Oversize**; Flexible (can mix with slim-fit/leggings) | Tight-fitting or complicated silhouettes | +| **Shoe Styles** | **Boots, Platform Shoes, Pointed Low Heels, Mesh Shoes, Ballet Flats, White Sneakers** | Full High Heels (高跟鞋), Tall Boots | +| **Bags/Shoes (Pattern)** | **Solid Color** only for bags and shoes | **Patterned/Printed** Bags or Shoes | +| **Bags (Material)** | Must be **Leather** (or natural elements like Rattan/Wicker) | Non-leather materials (except rattan/wicker) | +| **Accessories** | **Gold Tones**; **Necklace** (Mandatory); Rings, **Hoop Earrings**, Bracelet, **Watch** | Vector-style accessories | + +--- + +## II. Styling Pattern: Pattern Clash and Pure Balance + +This stylist's style prioritizes visual impact through **clashing prints** rather than layering. Outfits are usually based on a bold print or denim, balanced by pure, solid-colored accessories. + +### 1. Classic Outfit Examples + +| Style | Structure | Keywords | +| :--- | :--- | :--- | +| **Edgy Casual** | Milk Tea Oversize Blazer + Beige Shirt + Olive Green Cargo Pants + Black Pointed Low Heels | Utility, Sharp Contrast, Subtle Prints | +| **Elegant Flow** | Milk Tea Oversize Blazer + Beige Shirt + Dark Brown Slim-fit Pants + White Mesh Shoes or Ballet Flats | Mixed Fit, Comfort Contrast | +| **Sporty Mix** | Milk Tea Oversize Blazer + Dark Brown or Leopard Print Yoga Set + White Sneakers | Athleisure, Pattern Pop | +| **Heavy Print** | Floral Dress + Denim Pants + Rattan Bag + Wrist Cord + Layered Beaded Necklaces | Pattern Clash (Floral + Denim), Natural Accent | + +### 2. Outfit Extended Rules Summary + +1. **Pattern Clash**: Actively mix **at least two** patterns (Plaid/Stripe/Floral/Leopard) in one outfit to maximize visual interest. +2. **Layering Limit**: Do not rely on multi-layering for depth; use print complexity instead. The upper body is limited to **max 2 pieces**. +3. **Fit Flexibility**: Oversize is welcome, but tight-fitting items (e.g., leggings) can be mixed. Prioritize durable fabrics like **Denim** for texture. +4. **Color Base**: No strict color restrictions on garments, but all major accessories (**bags and shoes**) must be **pure, solid colors**. +5. **Shoe/Bag Principle**: Shoes should provide height (low heel, platform, boots). Bags should be **leather and solid-colored**, with rattan/wicker bags accepted as natural accents. +6. **Accessory Requirements**: **gold** jewelry is preferred for unified tone. **Necklace** is mandatory (min 1). Earrings must be **hoops**. Stack **bracelet/ring/watch**. +7. **Overall Balance**: If clothing patterns are complex, shoes/bags must be **simple and pure** to ground the look. Style leans toward **mixed-casual and energetic**, avoiding blandness. +8. **Scene Adaptability**: Add **cargo pants/low heels** for casual settings; **yoga sets** for sportier looks; use **denim** to balance out heavy prints. \ No newline at end of file diff --git a/data/stylist_guide/crystal_en.md:Zone.Identifier b/data/stylist_guide/crystal_en.md:Zone.Identifier new file mode 100644 index 0000000..d6c1ec6 Binary files /dev/null and b/data/stylist_guide/crystal_en.md:Zone.Identifier differ diff --git a/data/stylist_guide/mini_en.md b/data/stylist_guide/mini_en.md new file mode 100644 index 0000000..d0e7042 --- /dev/null +++ b/data/stylist_guide/mini_en.md @@ -0,0 +1,41 @@ +# Outfit Style Guide + +This guide summarizes the preferred styling logic, colors, silhouettes, accessories, and layering patterns favored by the stylist. + +## I. Core Preferences and Prohibitions + +| Category | Preference (✔️) | Prohibition (❌) | +| :--- | :--- | :--- | +| **Primary Colors** | **Black, White, Gray, Earth Tones** (Solid colors preferred) | Avoid **Yellow** | +| **Accent Colors** | Added via **bags, scarves** (Max 2 accent colors) | Avoid **Bright/Vivid** colors dominating | +| **Patterns** | **Plaid/Checkered, Stripes** (Used as accents) | Strictly avoid **Floral/Small Prints (碎花)** | +| **Style/Fit** | **Loose, Comfortable, Oversize**; **Clean and Sharp** tailoring | Tight-fitting or complicated silhouettes | +| **Footwear** | **White Sneakers**, **Flats/Single Shoes**, **Loafers** | **Heels, Tall Boots** | +| **Leather Bags** | Must be **Black or White** pure colors | - | +| **Accessories** | **Multiple Gold Necklaces** layered; **Watch** (Mandatory); Necklace, Headscarf, Scarf, Earrings, Ring | **Large/Bulky Earrings or Vector-style** accessories | + +--- + +## II. Styling Pattern: Layering and Balance + +This stylist's outfits emphasize **comfort** and **layering** (creating depth). The common structure is: **3 Upper Body Items + 1 Lower Body Item**. The pattern mainly uses solid primary colors, mixed with subtle patterns, aiming for a look that is **relaxed and casual yet polished**. + +### 1. Classic Outfit Examples + +| Style | Structure | Keywords | +| :--- | :--- | :--- | +| **Smart Casual** | Milk Tea Oversize Blazer + White Shirt + Loose Black Pants + **Tie** + White Sneakers | Neutral, Polished, Clean | +| **Everyday Casual** | Milk Tea Oversize Blazer + Dark Blue Jeans or Dark Gray Shorts + **Loafers** + White Socks + Detailed Vest/Tank Top | Relaxed, Comfortable, Detailed | +| **Sporty Chic** | Milk Tea Oversize Blazer + Black/Blue & White Striped Sleeveless Top + Black Leggings + White Sneakers + **Black Fanny Pack/Waist Bag** | Mixed Style, Dynamic, Balanced | +| **Dress Base** | Floral Dress (**Exception**) + White Sneakers + Beige Canvas Tote + Red Wrist Cord + **Layered Beaded Necklaces** | Comfortable, Accents, Exception Handling | + +### 2. Outfit Extended Rules Summary + +1. **Color Palette**: Main garment colors are limited to **Black, White, Gray, and Earth Tones** to ensure a minimalist foundation. Accent colors in accessories should not exceed 2. +2. **Layering Principle**: A minimum of **2-3 layers** on the upper body, with patterned edges (e.g., shirt collar, scarf) visible to add depth without complexity. +3. **Fit Requirements**: All items should lean toward a **loose/oversize** fit to prioritize comfort; tailoring must be **clean and sharp**. +4. **Pattern Restriction**: Only **plaid/checkered or stripes** are acceptable as subtle accents; **strictly no florals**, unless an extremely minimal exception is made. +5. **Shoe/Bag Coordination**: Footwear must be **flat and casual** (white sneakers are preferred); leather bags must be **pure black or white**. +6. **Accessory Stacking**: At least **2 gold necklaces** must be layered; a **watch is mandatory**; earrings/rings should be minimal, avoiding large volumes. +7. **Overall Balance**: When the upper body is complex (layered), the lower body should remain **simple**; the overall style is **neutral and polished**, avoiding highly feminine heels or boots. +8. **Scene Adaptability**: Add a **tie** for formal settings, **shorts/socks** for casual settings, or **leggings/fanny pack** for sporty looks, but always maintain core comfort. \ No newline at end of file diff --git a/data/stylist_guide/mini_en.md:Zone.Identifier b/data/stylist_guide/mini_en.md:Zone.Identifier new file mode 100644 index 0000000..d6c1ec6 Binary files /dev/null and b/data/stylist_guide/mini_en.md:Zone.Identifier differ