A sophisticated Python-based tool for analyzing and ranking posters based on various visual characteristics. This tool uses computer vision and machine learning techniques to evaluate posters based on color, texture, and composition features.
-
Comprehensive Image Analysis: Evaluates posters based on multiple visual characteristics:
- Color features (RGB, HSV, LAB color spaces)
- Texture analysis (Sobel gradients, GLCM, Local Binary Patterns)
- Composition features (rule of thirds, symmetry, edge density)
-
Automated Ranking System: Ranks posters based on a weighted scoring system that considers:
- Color variation (30%)
- Visual appeal (20%)
- Texture quality (25%)
- Composition (15%)
- Balance (10%)
-
Smart Organization: Automatically organizes posters into:
- Top 50 posters (highest ranked)
- Remaining posters
-
Detailed Reporting: Generates comprehensive CSV reports including:
- Detailed metrics for each poster
- Ranking information
- Original Midjourney prompts
- Analysis methodology
- Clone the repository:
git clone https://github.com/tatianathevisionary/poster-analyzer-and-picker.git
cd poster-analyzer-and-picker- Create a virtual environment (recommended):
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt-
Place your posters in the
originalsdirectory within your project folder. -
Run the analyzer:
python poster_analyzer.py- The script will:
- Analyze all posters in the directory
- Generate rankings
- Create separate folders for top 50 and remaining posters
- Generate detailed CSV reports for each category
The script generates the following outputs:
-
Folder Organization:
used posters/: Contains the top 50 ranked postersunused posters/: Contains the remaining posters
-
CSV Reports:
top_50_posters_TIMESTAMP.csv: Detailed analysis of top 50 postersremaining_posters_TIMESTAMP.csv: Analysis of remaining posters- Each CSV includes:
- Poster metrics
- Ranking information
- Original prompts
- Analysis methodology
-
Summary File:
poster_organization_summary.txt: Lists all posters with their rankings
The tool uses a sophisticated analysis pipeline:
-
Color Analysis:
- RGB and HSV histograms (32 bins per channel)
- LAB color space moments (mean, std, skewness)
- Color variation in different color spaces
-
Texture Analysis:
- Sobel gradient analysis
- GLCM (Gray Level Co-occurrence Matrix)
- Local Binary Patterns
-
Composition Analysis:
- Rule of thirds
- Vertical and horizontal symmetry
- Edge density and visual complexity
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenCV for image processing capabilities
- scikit-learn for machine learning components
- scikit-image for advanced image analysis features