https://github.com/a904guy/smart_segments
KRITA Plugin - Smart Segments - Segment Anything Model 2
https://github.com/a904guy/smart_segments
Last synced: 10 months ago
JSON representation
KRITA Plugin - Smart Segments - Segment Anything Model 2
- Host: GitHub
- URL: https://github.com/a904guy/smart_segments
- Owner: a904guy
- License: mit
- Created: 2025-07-30T02:47:12.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-07-30T04:54:55.000Z (11 months ago)
- Last Synced: 2025-07-30T06:37:25.823Z (11 months ago)
- Language: Python
- Homepage:
- Size: 6.46 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐จ Smart Segments for Krita
**AI-Powered Intelligent Segmentation Plugin**
[](https://opensource.org/licenses/MIT)
[](https://www.python.org/downloads/)
[](https://krita.org/)
Transform your digital art workflow with cutting-edge AI segmentation technology. Smart Segments leverages the power of SAM2 (Segment Anything Model 2) to provide intuitive, one-click object detection and selection in Krita.
---
## โจ Features
- ๐ง **AI-Powered Segmentation** - Advanced machine learning for precise object detection
- ๐ฏ **Interactive Selection** - Click-to-select any object in your artwork
- โก **Real-time Preview** - Instant visual feedback as you work
- ๐ง **Smart Tools Integration** - Seamless integration with Krita's native tools
- ๐จ **Artist-Friendly** - Designed by artists, for artists
- ๐ **One-Click Setup** - Automated installation and configuration
## ๐ Prerequisites
| Requirement | Version | Notes |
|-------------|---------|-------|
| **Krita** | 5.0+ | APT version with Python support (not Snap) |
| **Python** | 3.7+ | System Python installation |
| **PyQt5** | Latest | For Python-Krita bindings |
| **Disk Space** | ~5GB | For AI models and dependencies |
| **RAM** | 4GB+ | Recommended for optimal performance |
### ๐ฅ๏ธ Platform Support
**Built and tested on Ubuntu 24.04 LTS**, with potential cross-platform compatibility for:
- ๐ง **Linux** (Ubuntu, Debian, Fedora, Arch)
- ๐ช **Windows** 10/11
- ๐ **macOS** (experimental)
#### Ubuntu Development Dependencies
```bash
sudo apt install libgtk-4-dev libadwaita-1-dev git blueprint-compiler gettext libxml2-utils libgtk4-layer-shell-dev
```
> **Note**: While developed on Ubuntu, the plugin architecture supports cross-platform deployment. Windows and macOS compatibility may require additional testing.
## ๐ Installation
### ๐ฏ Method 1: Import from GitHub (Recommended)
1. **Open Krita**
2. Navigate to **Tools** โ **Scripts** โ **Import Python Plugin from Web**
3. Enter this GitHub repository URL:
```
https://github.com/a904guy/Smart_Segments/releases/download/1.0.0/SmartSegments_v1.0.0.zip
```
4. Click **OK** and wait for download to complete
5. **Restart Krita**
6. Go to **Settings** โ **Configure Krita** โ **Python Plugin Manager**
7. Enable **"Smart Segments"** plugin
8. **Restart Krita** again
9. Access via **Tools** โ **Smart Segments**
### ๐ฆ Method 2: Import from Release ZIP
1. **Download** the latest release ZIP from [GitHub Releases](https://github.com/a904guy/Smart_Segments/releases)
2. **Open Krita**
3. Navigate to **Tools** โ **Scripts** โ **Import Python Plugin from Zip File**
4. Select the downloaded ZIP file
5. **Restart Krita**
6. Go to **Settings** โ **Configure Krita** โ **Python Plugin Manager**
7. Enable **"Smart Segments"** plugin
8. **Restart Krita** again
9. Access via **Tools** โ **Smart Segments**
### ๐ ๏ธ Method 3: Developer Installation
For developers and advanced users (click to expand)
This method creates symbolic links for live development:
```bash
./dev-install.sh
```
**What this does:**
- โ
Verifies Krita installation and Python support
- โ
Installs missing dependencies automatically
- โ
Creates development symlinks for live editing
- โ
Provides step-by-step activation guide
#### Manual Development Setup
```bash
# Create Krita plugin directory
mkdir -p ~/.local/share/krita/pykrita
# Create symbolic links for development
ln -sf "$(pwd)/smart_segments" ~/.local/share/krita/pykrita/smart_segments
ln -sf "$(pwd)/smart_segments.desktop" ~/.local/share/krita/pykrita/smart_segments.desktop
```
## ๐ธ Screenshots
See Smart Segments in action with these screenshots from the development process:












## ๐จโ๐ป Development
> **Development Mode**: The plugin uses symbolic links, so code changes are immediately available after restarting Krita.
### Command Reference
| Command | Description | Alternative |
|---------|-------------|-------------|
| `./dev-install.sh` | Install plugin (dev mode) | - |
| `./dev-uninstall.sh` | Remove plugin | - |
| `./dev-utils.sh help` | Show all utilities | - |
| `./dev-utils.sh bundle` | Create distribution | `python3 create_plugin_package.py` |
| `./dev-utils.sh test` | Run test suite | `cd tests && python3 run_tests.py` |
| `./dev-utils.sh clean` | Clean artifacts | - |
| `./dev-utils.sh version` | Show version | - |
### ๐ Project Structure
```
๐ฆ Smart Segments
โโโ ๐จ smart_segments/ # Main plugin source
โโโ ๐งช tests/ # Test suite
โโโ ๐ documents/ # Documentation
โโโ ๐ resources/ # Icons and assets
โโโ ๐ง dev-*.sh # Development scripts
โโโ ๐ create_plugin_package.py # Distribution builder
```
## ๐ File Locations
| Component | Location | Type |
|-----------|----------|------|
| **Plugin Source** | `smart_segments/` | Directory |
| **Plugin Installation** | `~/.local/share/krita/pykrita/smart_segments` | Symlink |
| **Krita Logs** | `~/.local/share/krita/krita.log` | File |
| **Krita Config** | `~/.local/share/krita/` | Directory |
## ๐จ Troubleshooting
### ๐ Plugin Not Appearing
Click for troubleshooting steps
1. **Verify Krita Version**
```bash
which krita # Should show: /usr/bin/krita
```
2. **Check Plugin Installation**
```bash
ls -la ~/.local/share/krita/pykrita/
```
3. **Monitor Krita Logs**
```bash
tail -f ~/.local/share/krita/krita.log
```
4. **Common Issues**
- โ Using Snap version of Krita (doesn't support Python plugins)
- โ Missing PyQt5 bindings
- โ Plugin not enabled in Python Plugin Manager
### ๐ฆ Snap Version Issue
If you have the Snap version of Krita, you'll need to switch to the APT version:
```bash
# Remove snap version
sudo snap remove krita
# Install APT version with Python support
sudo apt install krita python3-pyqt5
```
### ๐ง Diagnostic Commands
```bash
# System check
./dev-utils.sh version
# Plugin verification
ls -la ~/.local/share/krita/pykrita/smart_segments
# Real-time log monitoring
tail -f ~/.local/share/krita/krita.log
```
## ๐ฎ First Time Setup
When you first launch Smart Segments, the **Setup Wizard** automatically handles everything:
### ๐ฏ Automated Setup Process
```mermaid
graph LR
A[Launch Plugin] --> B[System Check]
B --> C[Create Virtual Env]
C --> D[Download AI Models]
D --> E[Install Dependencies]
E --> F[Test Segmentation]
F --> G[Ready to Use! ๐]
```
| Step | Description | Time | Requirements |
|------|-------------|------|--------------|
| 1๏ธโฃ | **System Requirements Check** | ~5s | - |
| 2๏ธโฃ | **Virtual Environment Creation** | ~30s | Python 3.7+ |
| 3๏ธโฃ | **AI Model Download (SAM2)** | ~5-10min | Internet connection |
| 4๏ธโฃ | **Dependency Installation** | ~2-5min | Internet connection |
| 5๏ธโฃ | **Test Segmentation** | ~30s | - |
> **๐ก Internet Required**: First setup requires internet connection for downloading AI models (~2-3GB)
## ๐ง System Requirements
### ๐พ Dependencies (Auto-installed)
- **PyTorch** - Deep learning framework
- **SAM2 Models** - AI segmentation models
- **NumPy** - Numerical computing
- **OpenCV** - Computer vision utilities
- **Pillow** - Image processing
### ๐ฟ Storage Requirements
- **Base Plugin**: ~50MB
- **AI Models**: ~2-3GB
- **Dependencies**: ~1-2GB
- **Total**: ~5GB
---
## ๐ค Contributing
We welcome contributions! See our [contributing guidelines](CONTRIBUTING.md) for details.
## ๐ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## ๐ Acknowledgments
- **Krita Foundation** - For the amazing open-source digital painting software
- **Meta AI** - For the incredible SAM2 model
- **PyTorch Team** - For the powerful deep learning framework
---
**Made with โค๏ธ by [Hawkins.Tech Inc](https://github.com/a904guy/Smart_Segments)**
[๐ Report Bug](https://github.com/a904guy/Smart_Segments/issues) โข [โจ Request Feature](https://github.com/a904guy/Smart_Segments/issues) โข [๐ Documentation](https://github.com/a904guy/Smart_Segments)