@@ -28,6 +28,14 @@ pip install color-correction
2828## 🏋️♀️ How it works
2929![ How it works] ( assets/color-correction-how-it-works.png )
3030
31+ ## ✨ Features
32+ - ** Multiple Detection Methods** :
33+ - ** YOLOv8** : Fast and accurate ONNX-based detection
34+ - ** MCCardDetector** : OpenCV's mcc module for robust color checker detection
35+ - ** Segmentation Support** : Detect color checker cards using quadrilateral segmentation regions
36+ - ** Multiple Correction Models** : Choose from ` polynomial ` , ` least_squares ` , ` affine_reg ` , or ` linear_reg `
37+ - ** GPU Support** : Optional GPU acceleration for faster processing
38+ - ** Comprehensive Analysis** : Built-in analyzer for comparing different correction methods and detection approaches
3139
3240## ⚡ How to use
3341
@@ -42,7 +50,7 @@ input_image = cv2.imread(image_path)
4250
4351# Step 3: Initialize the color correction model with specified parameters
4452color_corrector = ColorCorrection(
45- detection_model = " yolov8" ,
53+ detection_model = " yolov8" , # "yolov8" or "mcc" (MCCardDetector)
4654 detection_conf_th = 0.25 ,
4755 correction_model = " polynomial" , # "least_squares", "affine_reg", "linear_reg"
4856 degree = 3 , # for polynomial correction model
@@ -121,6 +129,7 @@ report = ColorCorrectionAnalyzer(
121129 ],
122130 list_detection_methods = [
123131 (" yolov8" , {" detection_conf_th" : 0.25 }),
132+ # ("mcc", {}), # MCCardDetector using OpenCV's mcc module
124133 ],
125134)
126135report.run(
@@ -143,8 +152,8 @@ report.run(
143152
144153## 🤸 TODO
145154- [ ] Add Loggers
146- - [x] Add detection MCC : CCheckerDetector from opencv
147- - [ ] Add Segmentation Color Checker using YOLOv11 ONNX
155+ - [x] Add detection MCCardDetector from OpenCV's mcc module
156+ - [x ] Add Segmentation support for Color Checker detection
148157- [ ] Improve validation preprocessing (e.g., auto-match-orientation CC)
149158- [ ] Add more analysis and evaluation metrics (Still thinking...)
150159
0 commit comments