Color zooming or halftoning

Dear all,
I have this image from wikipedia that explains halftoning.
I want to experiment the same thing with matlab for other color combinations. So what will be the output color I will see from a far distance when combining different dots with different size and rotations?
Any suggestion will be appreciated.

 Accepted Answer

Walter Roberson
Walter Roberson on 24 Oct 2023
Decided on a per-layer transparency, something like
transparency = 0.8;
Create each halftone in an array.
image() the lowest layer (the one to go underneath)
hold on
now loop over the other layers:
alphadata = transparency .* double(thislayer ~= 0);
image(thislayer, 'AlphaData', alphadata);
At the end of the loop, turn hold off

3 Comments

Thank you for your answer. The steps that you suggested will let us generate the image of overlaped dots in a white background (5th column on my wiki uploaded image). Now how to know the final one color as if we see this generated image from a far distance (as shown in the 6th column)?
Do you think if I generate such overlaped dots image in a high resolution (ex. 5000x5000 pixels) and then zoom it out I can see that one color?
Mesho
The potential problem with zooming it out is that you are then subject to whatever graphics smoothing that MATLAB chooses to do. You can turn off the explicit smoothing, https://www.mathworks.com/help/matlab/creating_plots/using-graphics-smoothing.html but at some point it is going to have to interpolate data from pixels to fit into the physical screen.
You might well need 200 or more dots per inch https://www.atlasscreensupply.com/blog/choosing-the-right-mesh-and-halftone-dot.htm for your halftone. Ah, more values at https://en.wikipedia.org/wiki/Halftone#Resolution_of_halftone_screens -- you will probably need more than 300 dots per inch.
Typical desktop screen resolution does not get that fine. My relative high resolution iMac, 5120 x 2880, is about 218 dots per inch.
Some laptops do get up to those resolutions -- and some smartphones do get up there. For example the recent iPhones have had resolution of roughly 460 dots per inch... on a screen that is about 6.5 inches diagonal.
If the number of pixels in your halftone images exceeds the physical limits of the display you are using, then some layer is going to have to reduce information down. So to avoid that, do not bother with an image that is more than roughly 1000 x 1200 /
Didn't run the experiment yet but thank you for the comments.

Sign in to comment.

More Answers (0)

Categories

Find more on Read, Write, and Modify Image in Help Center and File Exchange

Asked:

on 23 Oct 2023

Commented:

on 26 Oct 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!