🌸 Genblum
Generating pixel images of flowers with different color strategies
Here’s a result to play around with: Flower generator
Description
Some assumptions for names of flower parts: the central part is called seeder and it will be surrounded by petals. It’s technically incorrect as female and male parts have different names, but this naming simplifies the model.
Forms
The easiest kind of flowers would be seeder size 1 and petal size 1, let’s call it S1P1.
It’s straightforward and would have structures like these:
Primitive
| | P | | | P | S | P | | | P | |
Full
| P | P | P | | P | S | P | | P | P | P |
Asymmetrical Left
| | P | P | | P | S | P | | P | P | |
Asymmetrical Right
| P | P | | | P | S | P | | | P | P |
Diagonal
| P | | P | | | S | | | P | | P |
Colors
We need to choose two colors: one for petals and one for the seeder. These colors shouldn’t be too random, and ideally should be connected in some way.
First Approach: RGB Random
Randomly selecting colors with equally distributed R, G, B parameters. Example images:




Looks okay, maybe a bit alien though.
Second Approach: RGB Correlated
Generate a petal color, then generate a seeder color. If the color distance is > 100, keep it, otherwise retry. Uses RGB (0 ≤ r, g, b ≤ 256).




Only slightly different from random.
Third Approach: RGB Bound
Use natural color limits.
- Seeder: r ∈ [128, 256], g ∈ [128, 256], b ∈ [0, 127]
- Petal: r + g + b ≤ 512 (to avoid too dark petals)




Much more naturally looking.
Fourth Approach: LAB Color Space
Instead of RGB, use the human-perception-oriented CIELAB space to generate and compare colors more naturally. Also applies bounding and correlation.




Looks similar to RGB-bound, but allows slightly different palettes.
Conclusion
Each approach has its advantages. Random RGB gives wild palettes; bounded and LAB offer more natural, safe choices.
Other Forms Examples
More examples using different shapes and the bounded RGB color palette.
Full


Diagonal


Asymmetrical Left & Right


Everything
Combining all forms



