How can I reconstruct a Julia set by a given image?

873 Views Asked by At

Basically, I have two images of Julia sets I liked most from a google query

$\ \ \ $

I want

  1. To be able to produce similar images, for that I need at least a palette from these images.
  2. To know the parameter $c$ for each of these images (for the process $z\to z^2+c$, producing Julia sets).

How such images are often produced: for each point we compute the number $n$ of iterations $z_{k+1}=z_k^2+c,\ z_0=$(the image point) such that after $n$th iteration the sequence $z_k$ for $k\ge n$ will not likely return to the unit circle (say $|z_n|>10$), and then we map each $n$ to a color.
I've heard of replacing $k\ge n$ with $k\ge 2^n$ in the above too.

I already know that most visually beautiful images are produced for $c$ being near the border of the Mandelbrot set, but the border is very large for trial and error. I'm even not sure if I can use a sort of least squares here, as the squared error function (depending on $c$) I believe will not be smooth.

So is there a way to exctact $c$ back, having only the images? Thanks.

Edit:
As Lutz Lehmann suggested, I tried searching by hand. For the first (left) image I got the points for spiral attractors of $z\to z^2+c$: $(292,144),\,(608,362)$ as I don't know the scale, I obtained the slope of $\frac{218}{316}$ and searched by that slope (you can try it yourself, I made a tool for it, simply download the html then open it in your favorite browser (firefox fully tested)).
The thing I don't get here is this

bird's foot like (in the red frame). Such things are located near $-0.524-0.522i$, and on the left side of the bulb centered at $\approx -0.503-0.562i$, but spirals there has $5$ spiral arms, not $3$ as needed.

For the right image (definitely from the edge of the largest bulb centered at $-1+0i$) I don't get the correct slope of these two points

marked red, and I don't even know what all these eye-looking points are. This is the array of such points coordinates, picked by hand:

(116, 458), (208, 436), (238, 331), (435, 417), (327, 557), 
(416, 550), (465, 527), (499, 501), (526, 467), (543, 414), 
(511, 360), (464, 344), (431, 354), (410, 370), (398, 387), 
(392, 406), (394, 424), (406, 440), (420, 451), (440, 451), 
(452, 442), (457, 431), (459, 418), (485, 418), (481, 442), 
(469, 464), (447, 480), (414, 483), (378, 469), (354, 435), 
(358, 397), (368, 372), (381, 345), (399, 312), (439, 263), 
(567, 209), (556, 144), (665, 227), (693, 263), (693, 291), 
(684, 308), (671, 314), (657, 309), (604, 571), (602, 559), 
(590, 553), (575, 562), (563, 576), (566, 604), (590, 642), 
(686, 668), (691, 736), (824, 619), (832, 451), (473, 394), 
(455, 384), (437, 381), (424, 387), (416, 398), (809, 437), 
(818, 423), (832, 417), (849, 418), (866, 426), (880, 442), 
(881, 465), (873, 484), (862, 504), (839, 520), (803, 531), 
(751, 512), (719, 457), (737, 402), (766, 366), (799, 338), 
(849, 309), (944, 296), (872, 567), (892, 531), (904, 504), 
(916, 472), (919, 432), (892, 392), (854, 383), (822, 389), 
(798, 403), (784, 427), (782, 453), (791, 474), (810, 488), 
(831, 491), (845, 482), (853, 471), (857, 461), (414, 410), 
(415, 420), (1052, 549), (1087, 427), (1193, 393), (1187, 445), 
(120, 417), (1229, 380), (85, 471), (809, 453), (857, 449), 
(657, 300)

Maybe I can get something like the spirals swirl parameter from them, but then it's needed to be able to obtain the parameter for an arbitrary $c$.

So, likely the closest images I get for this moment:
$\ \ $

-0.20335400390625002-0.677032470703125i  -0.77232373046875-0.121337890625i
$\ \ $
-0.542678955078125-0.53106689453125i -0.748584228515625-0.100362353515625i

Update: (about the left image, the right one is solved by Claude)
First I was thinking about performing $z\to z^2$ to some characteristic points like attractors or something but then the idea came -- why not to perform $z\to z^2$ to all the points? Then, as for any $z$ from the set $z^2+c$ is in the set too (and converse), $z\to z^2$ becomes $z\to z-c$ hence we obtain $c$. ))
For the left image, rotated $90^\circ$ $z\to z^2$ looks like this:

$\ \ $

So we see it was rotated (that's why I couldn't get it by attractors' slope) and cropped. Rotation is not in a way a problem in complex coordinates due to De Moivre's formula. But then we have the $c$ only approximately, but I want to be able to get the exact $c$ to recover the palette.

2

There are 2 best solutions below

0
On

You could use a depiction of the Mandelbrot set like in

Julia sets in Mandelbrot, large details

My old postscript code to generate this is included in the description page. With some more color and a somewhat higher resolution but without coordinates this looks like

The spirals in the second picture are a feature of the plot at $-0.8+0.2i$ and close to it. The connectedness of that picture tells that the point $c$ is inside the Mandelbrot set, the internal structure of the spirals is typical for points close to a secondary or more likely tertiary Mandelbulb.

3
On

The first image may be a zoom into a quadratic Julia set for $f_c(z) = z^2 + c$ near $c = 0.270723273 + 0.575139611 i$, centered on $0$ with zoom factor $5.3$ (zoom factor $1$ would have $\pm i$ at the top and bottom edges of the image). I found this by browsing in the Mandelbrot set. The "birds feet" have $4$ spokes, so I looked around the period $4$ bulb attached to the main cardioid at the top right. Then, the central spirals have $3$ arms so I looked around its child period $12$ bulb at internal angle $\frac{2}{3}$ (anticlockwise from the antenna of the period $4$ bulb). Then, these spirals are quite curly, so I looked near the base of the component where it attaches to its parent. I looked on the anticlockwise side and got lucky in the direction of the turn of the spirals, they would spiral in the other direction on the other side of the bond point. Because the Julia set is disconnected, the $c$ value is outside the Mandelbrot set, and I zoomed in until the image matched: quadratic Julia set for c = 0.270723273 +  0.575139611 i1)

The second image is likely an embedded Julia set in the Mandelbrot set, because of the decorations (and filename)

The decorations have a 3-way branching structure, so look near the 1/3 bulb (it turns out that the 2/3 bulb's branches are oppositely oriented).

Embedded Julia sets occur when zooming near a miniature Mandelbrot set copy. The filament structure seems nothing special, so pick the largest, the period 4 one in the longest filament. We will look for embedded Julia sets in the hairs decorating it.

Now look at the spirals. 13 steps around the spiral is the same as 2 steps in the radial direction, so look for a q/13 child bulb near the 1/2 bulb. I went first for q=6 which seemed ok, the ends of the spirals in nearby embedded Julia sets also have 5 and 6 features on them before the main filament connecting to the center or next spiral out.

The 6/13 bulb has 13 spokes, not knowing any better pick the one with the longest hair. Looking at the center of the image, there are two filaments branching in the opposite direction to the rest. This indicates that we should zoom into the sideways sticky outtie bit some way down the filament. Counting branches tells how far.

Looking at the very center of the image, it appears with 2-fold symmetry, not 4-fold as topmost embedded Julia sets have. Here we cannot see clearly enough due to the image resolution, but similar shapes can be found by zooming towards a spiral center, towards a node in the filaments and then off center to an embedded Julia set form in its hairs.

Putting all of that into practice gives $$c_0 \approx -0.16016174539934025+1.0375719438634177i$$ though many other places nearby will look similar.

You can explore interactively at https://mathr.co.uk/mandelbrot/web/?#!q=-0.16016174539934025+1.0375719438634177i@8e-11 (No way to zoom out apart from editing the view radius by hand.)

Here is a screenshot screenshot of embedded Julia set