Python GUI to generate TI1 files for ArgyllCMS and convert to i1profiler patch set

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
193
Reaction score
69
Points
163
Hello everyone...

WIth a little bit of AI powered help, I was able to create a method to use ArgyllCMS as a patch generator for i1profiler.

My tool will generate a TI1 file using targen and then convert the ti1 file to an i1profiler patch set (pxf file). Why would this be useful? I now have an old unlicensed i1pro rev D. As much as I like ArgyllCMS, I really like having a GUI to print charts and read patches.

Pharmacist explained the use of i1profiler to generate and read chart and then use argyllcms to generate the profile in this thread
https://www.printerknowledge.com/th...h-i1profiler-and-argyllcms.17061/#post-145955

This of course uses i1profiler's patch generation mechanism. My reasoning is that ArgyllCMS itself is probably a better patch generator for an ArgyllCMS profile especially if you want to use options like a preconditioning profile. I'm not so sure that generating the profile with i1profiler from an argyllcms patch set (especially preconditioned) would work any better with this tool, but perhaps someone can try it as well.

Some assumptions I made
- your printer is an RGB printer not CMYK
- If you are selecting a preconditioning profile, we will increase emphasis on neutrals with the -N 0.75 options

Enjoy! And if there are any bugs I can try to fix them but I'm not a programmer.. this was all through a two hours chat on MS Copilot :)
 

Attachments

  • ti1pxf-megatool.py.txt
    9.8 KB · Views: 9
Last edited:

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
193
Reaction score
69
Points
163
As a followup, if you want to use an X-Rite unsupported device with ArgyllCMS without using i1profiler (say an old ISIS bought off ebay) this will take a TI1 file and convert it to a format that can be imported into X-Rite Coloport.

Colorport is a free tool from Xrite that allows older devices to read in patch sets that can then be used by other apps. It will save in CGATS format so txt2ti3 should work to bring the data into argyllcms

Consider this another way to have some sort of scanning GUI with Argyll and it supports a ton of devices (up to the i1pro rev D).
 

Attachments

  • ti1_toColorport.py.txt
    2.3 KB · Views: 7
Last edited:

pharmacist

Printer VIP
Platinum Printer Member
Joined
May 29, 2007
Messages
2,927
Reaction score
1,683
Points
313
Location
Ghent, Belgium
Printer Model
SC-900 ET-8550 WF-7840 TS705
Hi @crenedecotret : that was some fantastic job you did with help of AI.

I have generate a ti1 file and used ArgyllCMS to generate a ti2 and a corresponding tif file: 20 rows with 24 patches non-randomized and also loaded the AI generated pxf file in i1Profiler and generated the target with some fiddling in the patch size in order to get a corresponding target that looks the same: 24 rows with 20 patches and this is the result side by side:

left: ArgyllCMS generated tif-file and right: i1Profiler optimized target (to get 24 rows with 20 patches):

1760336785560.png


You can see the AI script does it work. NOTE: DO NOT choose scramble when loading the pxf file in i1Profiler, because it does not scramble but uses new patches based on the patch generator of i1Profiler, so you will loose the chosen: patches:

1760337321335.png


The scramble button above checked does not scramble the 480-patch target with 128 grey steps, but instead will use their own generator to create new patches: when you uncheck the scramble butto again this is what you get:

1760337446113.png


your original 480-target patches with 128 grey steps are GONE !!! DO NOT USE the scramble button in i1Profiler if you want to maintain the ti1 generated patches.
 

pharmacist

Printer VIP
Platinum Printer Member
Joined
May 29, 2007
Messages
2,927
Reaction score
1,683
Points
313
Location
Ghent, Belgium
Printer Model
SC-900 ET-8550 WF-7840 TS705
One thing in your python script: the amount of black patches is not defined but standard set to 4

I see the command window the argument -e4 (4 white patches), butt not the argument -B4 (4 black patches). If not specified the standard amount will be 4 black patches. If you want to change it add the argument -Bx, where x is the amount of black patches (for example: -B8 will give 8 black patches).

Anyhow the ArgyllCMS patch generator is far superior in distributing the sample patches in the RGB color cube than the i1profiler and also you can specify the amount of grey steps within a given patch count: in 1Profiler the amount grey steps is determined by the amount of total patches. A 480 patch target generated with ArgyllCMS will better sample the RGB cube than a same size 480 patch target with i1Profiler, especially when count into the amount of grey steps, but also for the rest of the color patches in order to avoid one another to be distributed evenly in the 3D color space.
 
Last edited:

pharmacist

Printer VIP
Platinum Printer Member
Joined
May 29, 2007
Messages
2,927
Reaction score
1,683
Points
313
Location
Ghent, Belgium
Printer Model
SC-900 ET-8550 WF-7840 TS705
The strange behavior of i1Profiler in the amount of grey and near neutral patch generating

If you choose 1589 patches: alot of grey steps and near neutral steps:

1760338411747.png


But when you add 1 extra patch (total: 1590) the grey steps and near neutral steps are GONE:

1760338469817.png


This is the reason I prefer ArgyllCMS in patch generating, because you can fix the amount of grey steps at a given patch count.
 

pharmacist

Printer VIP
Platinum Printer Member
Joined
May 29, 2007
Messages
2,927
Reaction score
1,683
Points
313
Location
Ghent, Belgium
Printer Model
SC-900 ET-8550 WF-7840 TS705
I took some time to create a 702 patch target using 128 grey steps with the python script and below you can download the workflow for scanning with i1Profiler. The target has been optimized for the i1Pro2 scanning table.

Note: using the standard patch generator in i1Profiler it is not possible to have 128 grey steps in the target.
 

Attachments

  • 702-target ArgyllCMS for i1Profiler.zip
    297.7 KB · Views: 6

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
193
Reaction score
69
Points
163
Thanks for looking at the tool. This is a first attempt

I noticed the issue with the scramble button. I wasn't sure if i1Profiler was overwriting the custom patches or not. It might be possible to modify my tool to scramble the patches in the ti1 file before its used to generate the pxf file (this might be beyond what I can do) and this would solve the issue I do worry that without any separator or scrambling, it might be difficult to read the grayscale patches.

If you have an old device, I'm pretty sure colorport can scramble the patches before making a chart.

Selection for white and black patches would be easy to add but I didn't want to bother with anything else than defaults
 

pharmacist

Printer VIP
Platinum Printer Member
Joined
May 29, 2007
Messages
2,927
Reaction score
1,683
Points
313
Location
Ghent, Belgium
Printer Model
SC-900 ET-8550 WF-7840 TS705
Thanks for looking at the tool. This is a first attempt

I noticed the issue with the scramble button. I wasn't sure if i1Profiler was overwriting the custom patches or not. It might be possible to modify my tool to scramble the patches in the ti1 file before its used to generate the pxf file (this might be beyond what I can do) and this would solve the issue I do worry that without any separator or scrambling, it might be difficult to read the grayscale patches.

If you have an old device, I'm pretty sure colorport can scramble the patches before making a chart.

Selection for white and black patches would be easy to add but I didn't want to bother with anything else than defaults
I tried to manually change the arguments, but it is overruled by the script. When I choose -B3 instead of the standard 4 it still produces 4 black patches. So this is something you should tackle in the interface to be changed. Alternative you can make it possible to load an existing ti1 file and let the script generate the pxf file and an option to scramble the patch order in the resulting pxf file.
 

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
193
Reaction score
69
Points
163
I tried to manually change the arguments, but it is overruled by the script. When I choose -B3 instead of the standard 4 it still produces 4 black patches. So this is something you should tackle in the interface to be changed. Alternative you can make it possible to load an existing ti1 file and let the script generate the pxf file and an option to scramble the patch order in the resulting pxf file.
That's normal. The displayed command at the bottom is just a preview of the targen command because I had some doubts while developing it. I think I'll just add in prefilled options for white and black patches. Scrambling the results dosent seem too complicated either
 
Top