CMYK(RGB format) I don't know what the real term for this situation
If you print out RGB on a piece of paper it will look different with what computer is showing because it's in CMYK format.
Then you take picture of that piece of paper, it's store as RGB Format but all the color is still different from the computer screen.
As a result of that it remain the color of the printer (CMYK) but in RGB format as a picture in phone.
Don't worry about external factor... assume we're in perfect control environment.
So how can I convert phone picture of that piece of paper color to be as same as possible to what my computer is showing?
Can anyone share some theories or sample code to me below as answer?
Picture taken with a phone camera of a piece of printed paper color
What showing in my computer
You can't. The "color gamut", the set of colors that can be accurately represented, differs between RGB and CMYK. Even with the best (4-color process) printer in the world, you won't be able to represent, eg, the same bright green that you can on a monitor.
the colors you used in your example are "fully saturated" colours and hence can't be represented in the other space, if you pick less saturated colors you should have more luck
as @Sneftel said, they have different Gamuts and hence you can't convert between every colour in either space
that said, you could look at libraries like colormath that lets you do simple things like:
from colormath.color_objects import sRGBColor, CMYKColor
from colormath.color_conversions import convert_color
convert_color(sRGBColor(1, 1, 0), CMYKColor)
but to actually convert between real images and photos of these images, you'd need a very controlled environment. the above code has non-physical assumptions, but I think you should be able to get there using other intermediate colorspaces and maybe the CIECAM02 model
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.