This was one of my first webapplication written in 2019 as a project for university. There is no indent to develop it any further, it is a very unstructured project.
It is written in Golang and Plain Javascript. For this Application you need to install MongoDB, the free version is enough. MongoDB is needed to store the images and userdata created by this application.
The Application creates a mosaic image out of many tiny pictures. The Algorithm takes small Areas of the image, calculates the average Brightness and RGB values and then replaces the Area with a small image that has a average Brightness and RGB very close to the Area. The Algorithm is by all means not optimized, it's clear that parallel Asynchronious functions can be used.
If you want to see the Examples, you copy the dump folder in your mongodb bin folder.
Open your terminal and go to the mongodb bin folder, use the command mongorestore.
After that login with the Credential Username:khoi password:123 and you will have
a gallery and pool.
1.)
Go to the Folder picx and start picx.exe
Now you should have access the the application, open
localhost:4242/picx in a Browser.
2.)
Your create a account under sign up and log in with your credentials.
(You have to click the button, Enter key doesnt send the form, I think I didnt added a keylistener)
Your crendential are stored in the mongoDB unencrypted.
3.)
Go to image pool and File Select, here you should have a folder of many pictures.
I recommend more then 50 different/diverse pictures to get better results.
(You upload alot of images, the app cuts and resize the images to fit in
a pool of alot of small 5x5 - 30x30 pixel sized images.)
Then select a size under choose Kackelsize. Then Click on Pool/Upload.
On the Popup click Create New Pool
Go and write a name for your Pool.
Now you have a pool
4.)
Go to MOSAIC CREATION.
If you there is no Album, create a new one
(if you create an Album first, before you set the field.
Otherwise the fields reset).
Upload a file of which you want a mosaic.
Choose a pool.
Set Use Kackeln to multiple.
Click on the Button "los geht's" and wait for the result.
Now you can see your base motive unter BASIC MOTIVES and the mosaic unter GALLERY
The documentation in Folder Doku is in german, and isnt that well written by me.