VisualPyIDE is a powerful, customizable Python script editor designed for developers who need integrated image analysis capabilities. Built with PyQt6, it combines the flexibility of a modern code editor with specialized tools for image processing, computer vision, and AI-powered analysisβall within a single, cohesive environment.
- Syntax highlighting with support for Python and other languages
- Intelligent code completion powered by Jedi and Claude AI
- Tab-based editing for working with multiple files
- File browser with integrated project management
- Console output for running scripts directly in the editor
- Customizable UI with theming options
- Smart code suggestions that understand context
- AI-powered code analysis to identify bugs and improvements
- Automatic docstring generation for functions and classes
- Code explanation with adjustable detail levels
- Intelligent refactoring suggestions
- Interactive dashboard for real-time image processing
- Comprehensive visualization tools including histograms and comparisons
- Advanced image enhancement features including:
- Noise reduction and detail enhancement
- Color correction and white balance
- HDR processing and tone mapping
- Computer vision algorithms for:
- Edge and feature detection
- Image segmentation
- Face and object detection
- Optical character recognition
- Pluggable architecture for extending functionality
- Customizable keybindings
- Personalized editing experience suited to your workflows
- Template system for common tasks
- Python 3.7 or higher
- Qt6 libraries
- OpenCV (for image analysis)
# Clone the repository
git clone https://github.com/gddickinson/VisualPyIDE.git
cd VisualPyIDE
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.pyFor full functionality, install these optional packages:
# For AI integration
pip install anthropic
# For advanced image analysis
pip install scikit-image tensorflow torch torchvisionThe core editing component provides:
- Efficient code navigation with function/class browser
- Smart indentation and code formatting
- Error checking with inline indicators
- Autocomplete with context-aware suggestions
- Code folding for better organization
- Multiple selection and column editing
The integrated image analysis toolkit features:
- Interactive controls for quick adjustments
- Operation history with undo/redo functionality
- Side-by-side comparison of original and processed images
- Histogram visualization with channel toggling
- Code generation for reproducibility
- Basic enhancements
- Brightness, contrast, gamma
- Sharpening and blur
- Color space conversions
- Advanced techniques
- Noise reduction (Gaussian, median, bilateral, NLM)
- Edge detection (Canny, Sobel, Laplacian)
- Feature detection (corners, SIFT, ORB)
- Segmentation (thresholding, K-means, watershed)
- Classification using popular models (ResNet, MobileNet)
- Object detection with YOLO, SSD, and Faster R-CNN
- Face detection and recognition
- Optical character recognition (OCR)
Ready-to-use templates for common image processing tasks:
- Basic Image Loading - Essential operations for getting started
- Image Filters - Comprehensive collection of image filters
- Edge Detection - Multiple algorithms with parameter optimization
- Image Segmentation - Techniques for partitioning images
- Feature Detection - Identifying interest points and descriptors
- Face Detection - Methods for facial analysis
- OCR - Text extraction from images
- Image Classification - Neural network based categorization
- Object Detection - Localization and identification of objects
- Image Enhancement - Advanced techniques for improving image quality
VisualPyIDE is designed to fit seamlessly into your development workflow:
- Edit Python scripts with intelligent assistance
- Process and analyze images directly in the editor
- Generate code from your image processing operations
- Refine code with AI-powered suggestions
- Export as standalone Python scripts or full projects
This integration eliminates the need to switch between different tools, making your workflow more efficient and productive.
The Claude AI integration enhances your coding experience:
The editor uses a hybrid approach combining:
- Jedi for local code understanding
- Claude AI for context-aware suggestions
- Bug detection with explanation and fix suggestions
- Performance optimization recommendations
- Style improvements inline with PEP 8
- Automatic docstring generation following Google style
- Function and class explanations at different detail levels
- Usage examples created based on function signatures
# Load an image
img = cv2.imread('sample.jpg')
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
# Apply Gaussian blur
blurred = cv2.GaussianBlur(img_rgb, (5, 5), 0)
# Convert to grayscale
gray = cv2.cvtColor(blurred, cv2.COLOR_RGB2GRAY)
# Apply Canny edge detection
edges = cv2.Canny(gray, 100, 200)
# Display the result
plt.imshow(edges, cmap='gray')
plt.show()# From the terminal
python main.py --template edge_detection --image path/to/your/image.jpg
# From within the editor
from image_analysis.templates import edge_detection
# Load and process an image
image = edge_detection.load_image('path/to/your/image.jpg')
edges = edge_detection.apply_canny(image, threshold1=100, threshold2=200)
edge_detection.display_image(edges, title="Detected Edges")- Use the Image Analysis Dashboard to process your image
- Switch to the "Python Code" tab
- Click "Copy to Clipboard" or "Create Script"
- Paste the generated code into your project
- Customize as needed
Customize the editor through:
- Settings > Editor Preferences
- Custom keybindings.json
- themes/ directory for UI customization
Configure image analysis tools:
- Settings > Image Analysis
- models/ directory for custom ML models
- templates/ directory for custom processing templates
Add your own plugins:
- Create a new Python file in the
plugins/directory - Implement the
PluginInterfaceclass - Register the plugin in
plugin_registry.py
VisualPyIDE/
βββ core/ # Core editor functionality
β βββ editor.py # Main editor component
β βββ syntax.py # Syntax highlighting
β βββ autocomplete.py # Code completion
β βββ ai_integration.py # Claude AI integration
βββ ui/ # User interface components
βββ plugins/ # Plugin system
βββ image_analysis/ # Image analysis tools
β βββ dashboard.py # Interactive dashboard
β βββ image_viewer.py # Enhanced viewer
β βββ processing.py # Processing algorithms
β βββ templates/ # Ready-to-use templates
βββ customization/ # Customization framework
βββ models/ # Pre-trained ML models
βββ main.py # Application entry point
- Python 3.7+
- PyQt6
- OpenCV (cv2) 4.5+
- NumPy 1.19+
- Matplotlib 3.3+
- Jedi 0.18+
Optional requirements:
- Anthropic Python SDK (for Claude AI integration)
- scikit-image (for advanced image processing)
- TensorFlow or PyTorch (for ML-based image analysis)
- pytesseract or easyocr (for OCR functionality)
Future enhancements planned:
- GPU acceleration for image processing operations
- Cloud integration for remote processing of large images
- Batch processing for multiple image operations
- Additional AI models for specialized image analysis
- Collaborative editing features
- Version control integration
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
To contribute:
- Fork the repository
- Create a feature branch
- Add your changes
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions, please:
- Check the FAQ
- Open an issue on GitHub
- Join our community Discord server
VisualPyIDE: Where coding meets image analysis in perfect harmony.
