InnoColor deployment for Ubuntu. PyTorch and TKinter.
If you want the stable production version, please move to the release/windows branch.
innocolor/
│── main.py
│── settings.py: app and device (Linux and XBox) specifications
|── base/: parent objects for utils
|── utils/: interface objects and also app-specific processes for running models
|── interfaces/: script for the three TK interfaces
|── icons/
|
|── dsX.pth: datasets saved with information for each input-groundtruth pair along with model used
|
|── model/
|── checkpoint/
|── cvdsim/
|── sam2/
|── sam2_configs/
|
│── requirements.txt
│── README.md
- Install Repo
git clone https://github.com/Brocoliman/InnoColor.git
cd InnoColor- (Recommended) Create Conda environment This project was developed and tested using Conda on Linux (Ubuntu).
conda create -n innocolor python=3.11
conda activate innocolor- Install requirements
pip install -r requirements.txt- Download models (move these into their respective folders in
checkpoint/) from Google Drive
Dalt-NETrequiresclassifier_190.pthandLUTs_190.pthInnoColorrequiresclassifier_2000.pth,generator_200.pth,LUTs_2000.pth, andSAM2UNet-SOD.pthdistillrequiresgenerator_100.pth
- Download sample datasets and move them into root folder
ds1.pthds2.pthds3.pth
- Change
FOLDERinsettings.pyto the name of this project location
python main.pyEach interface (camera interface and data-editing interface) contains components of the InnoColor toolbar. This includes the model, sim, and highlight selection.
You can choose between model types of
None: No Daltonization is appliedHue Rotation[P]: JB Huang's Hue Rotation matrix as described in Huang et al., 2008Dalt-NET[P]: multi-mapping table based method described in Wang, 2024InnoColor[P]: saliency based method described in Wang, 2025. Note that this is NOT the newest methodDistillation[D]: newest method using data distillation into DDPA. Please read the attached paper- Usually models developed for protanopia are fairly suitable for deuteranopia cases, and vice versa, although there are significant limitations.
- In the data-editing interface, models have an input parameter slider. No current model utilizes this yet, although this value is passed as a parameter
You can choose between sim types of
None: no CVDProtan: protanopia or protanomaly, red cone deficiency, second most common caseDeutan: deuteranopia or deuteranomaly, green cone deficiency, most common caseTritan: tritanopia or tritanomaly, blue cone deficiency, a much rarer case- Both interfaces allow slider adjustment of the severity from 0 (no CVD) to 1 (-nopia, full blindness for respective cone)
You can highlight pixels of colors near
NoneRedGreenBlue