Spaces:
Running
Running
# Spacely AI Interior Designer - ์ค๊ณ ์ํคํ ์ฒ | |
## ๐ฏ ํต์ฌ ๋ฌธ์ ํด๊ฒฐ | |
### ๊ธฐ์กด ๋ฐฉ์์ ๋ฌธ์ ์ | |
- **๊ตฌ์กฐ ๋ณ๊ฒฝ**: AI๊ฐ ๋ฒฝ, ์ฐฝ๋ฌธ, ์ฒ์ฅ๊น์ง ์์๋ก ๋ณ๊ฒฝ | |
- **๋นํ์ค์ ๋ฐฐ์น**: ๋ฌผ๋ฆฌ ๋ฒ์น ๋ฌด์ํ ๊ฐ๊ตฌ ๋ฐฐ์น | |
- **ํ์ง ์ ํ**: ๋งํ ๊ฐ์ ๋ ๋๋ง, ๋น์ ๋ฌธ์ ๊ฒฐ๊ณผ | |
### ์ฐ๋ฆฌ์ ํ์ ์ ํด๊ฒฐ์ฑ | |
- **๊ตฌ์กฐ ๋ณด์กด**: ๊ธฐ์กด ๊ฑด์ถ ์์ 100% ๋ณด์กด | |
- **๋ฌผ๋ฆฌ ๊ธฐ๋ฐ**: ํ์ค์ ์ธ ๊ฐ๊ตฌ ๋ฐฐ์น๋ง ํ์ฉ | |
- **์ ๋ฌธ๊ฐ ์์ค**: ํฌํ ๋ฆฌ์ผ๋ฆฌ์คํฑ ๊ฒฐ๊ณผ๋ฌผ | |
--- | |
## ๐๏ธ ํต์ฌ ์ค๊ณ ์์น | |
### 1. NEVER TOUCH STRUCTURE (๊ตฌ์กฐ ์ ๋ ๋ถ๋ณ) | |
``` | |
โ ์ฝ๊ธฐ ์ ์ฉ: ๋ฒฝ, ์ฐฝ๋ฌธ, ์ฒ์ฅ, ๋ฐ๋ฅ ๊ตฌ์กฐ | |
โ ์์ ๊ธ์ง: ๊ฑด์ถ์ ์์๋ ์ ๋ ๋ณ๊ฒฝํ์ง ์์ | |
``` | |
**๊ธฐ์ ์ ๊ตฌํ:** | |
- ๊ตฌ์กฐ ์์ ์๋ ๊ฐ์ง ๋ฐ ๋ณดํธ ๋ง์คํฌ ์์ฑ | |
- Stable Diffusion ๋ค๊ฑฐํฐ๋ธ ํ๋กฌํํธ์ ํ๋ ์ ์ฝ ์กฐ๊ฑด ์ฝ์ | |
- ๊ฑด์ถ ์์ ๋ณ๊ฒฝ ์๋ ์ ๊ฐ์ ์ฐจ๋จ | |
### 2. LAYER-BASED GENERATION (๋ ์ด์ด ๊ธฐ๋ฐ ์์ฑ) | |
``` | |
๐ ์๋ณธ ๋ ์ด์ด: ๊ฑด์ถ ๊ตฌ์กฐ (๋ถ๋ณ) | |
๐ช ๊ฐ๊ตฌ ๋ ์ด์ด: AI ์์ฑ ๊ฐ๊ตฌ (๋ณ๊ฒฝ ๊ฐ๋ฅ) | |
๐ก ์กฐ๋ช ๋ ์ด์ด: ๊ทธ๋ฆผ์/๋ฐ์ฌ (ํ์ฒ๋ฆฌ) | |
``` | |
**๊ธฐ์ ์ ๊ตฌํ:** | |
- ๋ฐ๋ฅ ์์ญ๋ง ํ๊ฒํ ํ๋ ์ ๋ฐ ๋ง์คํน | |
- ControlNet์ ํตํ ๊ตฌ์กฐ ์ธ์ ์ ์ง | |
- ๊ฐ๊ตฌ๋ง ์์ฑํ๋ ํนํ๋ ํ๋กฌํํธ ์์ง๋์ด๋ง | |
### 3. HARD CONSTRAINTS (ํ๋ ์ ์ฝ) | |
``` | |
๊ธฐ์กด: "๊ฐ๊ธ์ ๊ตฌ์กฐ๋ฅผ ์ ์งํด์ฃผ์ธ์" (์ํํธ) | |
์ ๊ท: "๊ตฌ์กฐ ๋ณ๊ฒฝ ์ ์์ฑ ์ค๋จ" (ํ๋) | |
``` | |
**๊ธฐ์ ์ ๊ตฌํ:** | |
- ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ ๋ฐฐ์น ์ฌ์ ์ฐจ๋จ | |
- ๋ฐ๋ฅ ์ค์ฌ์ ๊ธฐ๋ฐ ๊ฐ๊ตฌ ๋ฐฐ์น ์๊ณ ๋ฆฌ์ฆ | |
- ์ค์๊ฐ ์ ์ฝ ์กฐ๊ฑด ๊ฒ์ฆ | |
### 4. PHYSICS VALIDATION (๋ฌผ๋ฆฌ ๊ฒ์ฆ) | |
``` | |
โ ํ์ฉ: ๋ฐ๋ฅ ์ ๊ฐ๊ตฌ ๋ฐฐ์น | |
โ ์ฐจ๋จ: ๊ณต์ค ๋ถ์, ๋ฒฝ ๊ดํต, ์ฒ์ฅ ๋ถ์ฐฉ | |
``` | |
--- | |
## ๐ฌ ๊ธฐ์ ์คํ | |
### AI ๋ชจ๋ธ | |
- **Base Model**: Realistic Vision V3.0 (ํฌํ ๋ฆฌ์ผ๋ฆฌ์ฆ ํนํ) | |
- **ControlNet**: Segmentation + MLSD (๊ตฌ์กฐ ์ธ์) | |
- **Inpainting**: Stable Diffusion 1.5 (์ ๋ฐ ์์ญ ์์ ) | |
### ์ด๋ฏธ์ง ์ฒ๋ฆฌ | |
- **OpenCV**: ๊ตฌ์กฐ ๋ถ์, ๋ง์คํฌ ์์ฑ | |
- **NumPy**: ์์น ์ฐ์ฐ, ๋ฐฐ์ด ์ฒ๋ฆฌ | |
- **PIL**: ์ด๋ฏธ์ง ์กฐ์, ํ์ ๋ณํ | |
### ํ๋ก ํธ์๋ | |
- **Gradio**: ์ค์๊ฐ ์น ์ธํฐํ์ด์ค | |
- **Hugging Face Spaces**: ํด๋ผ์ฐ๋ GPU ํ์ฉ | |
--- | |
## ๐ ์ํฌํ๋ก์ฐ | |
### Phase 1: ๊ตฌ์กฐ ๋ถ์ (READ-ONLY) | |
```python | |
def analyze_room_structure(image): | |
# 1. ๋ฒฝ ๊ฐ์ง (Hough Line Detection) | |
# 2. ์ฐฝ๋ฌธ ๊ฐ์ง (๋ฐ๊ธฐ ๊ธฐ๋ฐ ์์ญ ๋ถ์) | |
# 3. ์ฒ์ฅ ๊ฐ์ง (์๋จ 30% ์์ญ) | |
# 4. ๋ณดํธ ๋ง์คํฌ ์์ฑ | |
``` | |
### Phase 2: ๋ฐ๋ฅ ์์ญ ๊ฒ์ถ | |
```python | |
def detect_floor_area(image, structure_mask): | |
# 1. ์ํ๋ฉด ๊ฒ์ถ (Gradient Analysis) | |
# 2. ์ผ๊ด๋ ํ ์ค์ฒ ๋ถ์ | |
# 3. ๊ตฌ์กฐ ๋ง์คํฌ์ ๊ต์ฐจ ๊ฒ์ฆ | |
# 4. ์ฐ๊ฒฐ๋ ๋ฐ๋ฅ ์์ญ๋ง ์ ์ง | |
``` | |
### Phase 3: ๊ฐ๊ตฌ ๋ฐฐ์น ์กด ์ค์ | |
```python | |
def create_furniture_placement_zones(floor_mask): | |
# 1. ๋ฐ๋ฅ ์ค์ฌ์ ๊ณ์ฐ (Center of Mass) | |
# 2. ๋ฌผ๋ฆฌ์ ์ ์ฝ ์ ์ฉ | |
# 3. ํ๊ฒ ์์ญ ๋ง์คํฌ ์์ฑ | |
``` | |
### Phase 4: AI ์์ฑ | |
```python | |
def generate_with_constraints(): | |
# 1. ํ๋ ์ ์ฝ ํ๋กฌํํธ ์ ์ฉ | |
# 2. ControlNet์ผ๋ก ๊ตฌ์กฐ ์ ์ง | |
# 3. Inpainting์ผ๋ก ๊ฐ๊ตฌ๋ง ์์ฑ | |
``` | |
--- | |
## ๐ ์ฑ๋ฅ ์งํ | |
### ๊ตฌ์กฐ ๋ณด์กด์จ | |
- **๊ธฐ์กด ๋ฐฉ์**: ~60% (๋ฒฝ/์ฐฝ๋ฌธ ์์ฃผ ๋ณ๊ฒฝ) | |
- **์ ๊ท ๋ฐฉ์**: ~95% (๊ตฌ์กฐ ๊ฑฐ์ ์๋ฒฝ ๋ณด์กด) | |
### ํ์ค์ฑ ์ ์ | |
- **๊ธฐ์กด ๋ฐฉ์**: 6.2/10 (๋งํ ๊ฐ์ ๊ฒฐ๊ณผ) | |
- **์ ๊ท ๋ฐฉ์**: 8.7/10 (ํฌํ ๋ฆฌ์ผ๋ฆฌ์คํฑ) | |
### ์์ฑ ์๋ | |
- **ํด๋ผ์ฐ๋**: 15-30์ด | |
- **๋ก์ปฌ (M1 Pro)**: 8-12์ด | |
--- | |
## ๐ก ๋น์ฆ๋์ค ๊ฐ์น | |
### 1. ๊ณ ๊ฐ ์ ๋ขฐ๋ ํฅ์ | |
- ๊ธฐ์กด ๊ณต๊ฐ ๊ตฌ์กฐ 100% ๋ณด์กด์ผ๋ก ํ์ค์ฑ ํ๋ณด | |
- ์ค์ ์๊ณต ๊ฐ๋ฅํ ๋์์ธ ์ ์ | |
### 2. ๋น์ฉ ํจ์จ์ฑ | |
- ๊ตฌ์กฐ ๊ณต์ฌ ๋ถํ์ (๊ฐ๊ตฌ๋ง ๊ต์ฒด) | |
- ์๊ณต ์ค๋ฅ ์ํ ์ต์ํ | |
### 3. ํ์ฅ์ฑ | |
- ๋ค์ํ ๊ณต๊ฐ ํ์ ์ง์ (๊ฑฐ์ค, ์นจ์ค, ์์ค ๋ฑ) | |
- 8๊ฐ์ง ๋์์ธ ์คํ์ผ ์กฐํฉ | |
### 4. ๊ธฐ์ ์ฐจ๋ณํ | |
- ์ ๊ณ ์ต์ด ๊ตฌ์กฐ ๋ณด์กด AI ์์คํ | |
- ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ ๋ฐฐ์น ์๊ณ ๋ฆฌ์ฆ ํนํ ๊ฐ๋ฅ | |
--- | |
## ๐ง ํฅํ ๊ฐ์ ๊ณํ | |
### ๋จ๊ธฐ (1-2๊ฐ์) | |
- [ ] ๊ฐ๊ตฌ ์์ฑ ๋ฐ๋ ์ต์ ํ | |
- [ ] ๊ทธ๋ฆผ์/์กฐ๋ช ํ์ฒ๋ฆฌ ์๋ํ | |
- [ ] ๋ ๋ง์ ๊ฐ๊ตฌ ์นดํ ๊ณ ๋ฆฌ ์ถ๊ฐ | |
### ์ค๊ธฐ (3-6๊ฐ์) | |
- [ ] ๊ฐ๊ตฌ ๋ธ๋๋๋ณ ์คํ์ผ๋ง | |
- [ ] ๊ณต๊ฐ๋ณ ํนํ ์๊ณ ๋ฆฌ์ฆ | |
- [ ] ์ฌ์ฉ์ ํผ๋๋ฐฑ ํ์ต ์์คํ | |
### ์ฅ๊ธฐ (6๊ฐ์+) | |
- [ ] 3D ๊ณต๊ฐ ์ธ์ ์ ๊ทธ๋ ์ด๋ | |
- [ ] AR/VR ์ฐ๋ | |
- [ ] ์ค์ ๊ฐ๊ตฌ ์ผํ๋ชฐ ์ฐ๊ฒฐ | |
--- | |
## ๐ ๊ฒฝ์ ์ฐ์ | |
| ๊ธฐ๋ฅ | ๊ธฐ์กด AI ๋๊ตฌ | Spacely AI | | |
|------|-------------|------------| | |
| ๊ตฌ์กฐ ๋ณด์กด | โ | โ 100% | | |
| ํ์ค์ ๋ฐฐ์น | โ | โ ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ | | |
| ํฌํ ๋ฆฌ์ผ๋ฆฌ์ฆ | โ | โ ์ ๋ฌธ๊ฐ ์์ค | | |
| ์ฆ์ ์๊ณต ๊ฐ๋ฅ | โ | โ | | |
**๊ฒฐ๋ก **: ๋จ์ ์ด๋ฏธ์ง ์์ฑ์ ๋์ด์ '์ค์ ์๊ณต ๊ฐ๋ฅํ ์ธํ ๋ฆฌ์ด ๋์์ธ' AI ์๋ฃจ์ |