The Software


So now this is the Dashboard for the Software, showing all of it's possibilities, stuff, that is been created right now, plans for the nearest future and some visions, while not knowing if they will be possible.


One could say the software of the Deep-Picture Converter already has something like a history. Since the completition of the first prototype on the 17th of October, 2021 there have been a lot of updates. Problems had been solved, improvements in colour have been made, technical innovations took place and last but not least the converter got a modern design. So on the 23rd of January the first ''finished'' Software was released (still only for Windows) and could be loaded in the download-section of this website.

Well, the DPC V1.0 still lacks in some ways, the most occuring colour option seems to give wrong results and the linear growth pixel incrementor can only be a natural number - But these issues should soon be solved!


Possible adjustments

Here we have got the list I was talking about. What is possible, what will be possible?



This can already be done:


(1) Selecting a picture

Of course users can choose the picture that they prefer to use for convertion, PNG and JPG are supported inputs. You could try other file-formats, they could possibly also already work.


(2) Choosing the kind of pixel-growth

The user can select, weather a linear or exponential growth shall be used for conversion.

a) Linear – The pixels are growing row by row by an absolute number.

b) Exponential – The pixels are growing row by row by a typed in factor, while the resulting pixel size of each row is determined by using roundingmath.


(3) Choosing the colouring

The user can select, how the colour of the deep picture shall be originated.

a) Most frequently – The most often occuring colour from the mother-picture within a specific area determines the colour of the whole square of the resulting net structure.

b) Random – One random colour from the mother-picture within a specific area determines the colour of the whole square of the resulting net structure.

c) Average – The colours of the resulting net structures are calculated through the RGB- values by evaluating all pixels from the mother-picture.


(4) Typing the size of the center

Users can type the size of the high resoluted center (Detail area), it has to be a natural number (e.g. 1;3;400), which will determine the height and the with of the center square measured in pixels.


(5) Typing the size of the first row

The users can type, what resolution the first row, that is surrounding the center, should have. It has to be a natural number that is equal or smaller than the size of the center. (e.g. if the center measures 10x10 pixels, the first row has to be ''10'' or smaller.) Usually this is 1 - like the center is, or 2 - which is creates a difference depending where the growth actually starts. But experiments can be cool...


(6) Typing a value for the growth

Select how fast the pixels should grow by typing a so called ''pixel-incrementor''. For the linear growth it should still be a natural number (e.g. 1 or 2), for the exponential growth, it has to be a factor which is bigger than ''1'' (e.g. 1.03 or 2.5). Users shouldn't use a comma, they should use a dot.


(7) Choosing the center or manually typing the values for X and Y

Users may select the origin of the center by clicking on the button. A window will open where you can set a red center mark. You then have to save this location. Alternatively users can set the location of the center by typing the specific value for x and y (number of pixels measured from the upper left corner). The values x=100 and y=100 are default.


(8) Choosing, if the result should open up after conversion

Users may click the box, if you want the result to be shown up after conversion. In Version 1.0 the input picture sadly also opens up, when this option is selected.


(9) Selecting to which destination the converted files will be saved

Users can choose where to save the converted SVG and PNG files, as well as the net-structure, after the conversion.


(10) Choosing the language

You can choose between English and German by clicking on the country symbols in the upper right corner of the GUI.



What we are on right now:

(and what shall be included in Version 2.0 - releasing probably on 1st of June, 2022)


(1) Das linear Pixel-incrementor will accept a broken numbers

These days only natural numbers can be used for the pixel incrementor for the linear net-structure, at least the dot will not be realised, the typed in number will just be ''naturalised''. So all positive rational numbers shall be accepted for the pixel-incrementor, so that an algorithm calculates the size of each row in the backround and than rounds towards the smaller number (because there won't be any ''half''-pixels), that means numbers like ''2.79'' will turn into ''2''.


(2) The ''most occuring colour issue'' will be cleared

Version 1.0 has problems creating Deep-Pictures by using the ''most occuring colour''-option. Ive tested some extreme examples and came to the conclusion that results seem to often not make sense. The programmer is working on it.


(3) The input picture shouldn't open up after conversion

If the ''Show result''-Box is clicked, the input picture also opens up after conversion, this issue should be solved by the 27th of February.


(4) Choosing which files to create

Version 1.0 is creating a PNG-Deep-Picture, a SVG-Deep-Picture as well as a PNG-net-structure for every converted input file. Some users may not need the SVG, or the net. Some users may only want the net, e.g. to colour the squares to create Pixel-Art with different sized Pixels. So there should be the possibility to place a tick when a file-type is wanted and to leave it when it's not.


(5) The number of squares will be calculated

I've used nearly one whole day to create two giant Open-Office-Calc tables, which are needed to calculate an estimated number of squares for the linear-, as well as for the exponential growth, by evaluating all input values (location, pixel-incrementor and the others...). This value shall somehow occure inside version 2.0, just before the ''convert''-button - so users will be able to estimate, how many details will occure offside the center. Also memory space needed to store the converted files could be estimated pretty exact. You may try the calculation by downloading the tables from this website - they can be found in the ''Download'' section.



Planned (and maybe also included in version 2.0):


(1) Basic/extended switch

The program is growing and could loose it's character and shouldn't seem to be more complicated than it really is. So there should be the option to switch between a basic and an extended version - just within the GUi. But I didn't yet decide which options won't appear within the basic menu.


(2) Typing a value for a sudden incrementor-stop

Pixels don't have to grow till the borders of the picture are reached. A custom resolution can be kept through setting a maximum square-/pixel-size. So that leads to Deep-Pictures, where you will maintain a basic resolution and create an area with smoothly decreasing pixel-/square size.


(3) The possibility of batch processing

I have concrete visions about what batch processing inside the D-P-C could look like. It could easily create Videos like this, while taking only very little amounts of time. My ideas are still focused on a batch processing depending one and the same picture for each single conversion, but video processing seems possible. Of course this would only satisfy aesthetical needs.


(4) Setting default values for each parameter

Random users that want quick results may not want to read the descriptions or even type values into each field, so default values should be cleverly choosen and automatically set when starting the program.



Future-visions (definitely not included in V2.0):


(1) A circular net-structure

Why not create a circular pixel-structure? This would be very interesting, beautiful results could be created. All parameters (like location, pixel-incrementor, resolution of the first row ...) would still work in more or less the same way. The SVG files wouldn't even have a problem saving the net, because they are vector-based. But even when taking the results to PNG there can be greate results, just the resolution should be very high.


(2) A triangle net-structure

It's the same thing, I think this could possibly also work. Wouldn't that be cool?