Spaces:
Runtime error
Runtime error
| import streamlit as st | |
| import cv2 | |
| import numpy as np | |
| from PIL import Image | |
| st.title('Image to Sketch') | |
| file = st.file_uploader('Upload an image', type=['jpg', 'jpeg', 'png']) | |
| if file: | |
| img = Image.open(file).convert('RGB') | |
| img2 = np.array(img) | |
| # 1. Görüntüyü OpenCV formatına (BGR) çevir | |
| img_bw = cv2.cvtColor(img2, cv2.COLOR_RGB2BGR) | |
| # FIX: BGR formatından Gray (Gri) formata çeviriyoruz | |
| gray = cv2.cvtColor(img_bw, cv2.COLOR_BGR2GRAY) | |
| # 2. Tersine çevir ve bulanıklaştır | |
| inverted = 255 - gray | |
| blurred = cv2.GaussianBlur(inverted, (21, 21), 0) | |
| # 3. Sketch efekti uygula | |
| def dodge(front, back): | |
| return cv2.divide(front, 255 - back, scale=256) | |
| sketch = dodge(blurred, gray) | |
| # 4. Ekranda Göster | |
| st.subheader('Original vs Sketch') | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| st.image(img, caption='Original Image', use_column_width=True) | |
| with col2: | |
| # Sketch tek kanallı (gri) olduğu için çıktı daha nettir | |
| st.image(sketch, caption='Sketch Image', use_column_width=True) | |