Inspiration

We immediately identified a commonality between us regarding the issues artists face with the advent of ai generated imaging. It is common to hear of artists, who have presented their art online, discovering that their work has been used to generate other images with no accreditation. Their work, the very means of their livelihood, is in jeopardy without proper consideration.

What it does

While considering how we can address this issue and live into our inspiration, we looked to what we were able to do. If we could create the foundations for an app that a) Accepts user images, b) Possesses a database that can provide style images to map on top of those user provided images and c) Collects the created images to continuously hone in on the quality of the generated images, then maybe this database could eventually become a stand in for the sweeping algorithms that suck into their databases images that they don't rightly own.

How we built it

We started by building a repository. We created separate files in the repository for both frontend and backend code. The core of the project was the machine learning algorithm that we started building by following PyTorch's Neural Transfer Tutorial. This was eventually augmented by cloning and integrating aspects of NKolkin17's Neural Neighbor Style Transfer Repo to our initial code. We created the frontend using HTML, CSS and Javascript, and built the backend using MongoBD for the database and Flask for the framework. Salt was used for password has salting to add a layer of security We used several libraries, including MatPlotLib to help manage image plotting for the loss algorithms, Pillow for image processing, and Numpy...because its Numpy.

Challenges we ran into

In retrospect, a document database like MongoDB probably wasn't as effective as a vector database would have been for our purposes. We had some issues with version dependencies, with one of our biggest issues stemming from needing Python 3.10 while operating on Python 3.11 for running code locally

Accomplishments that we're proud of

This project was quite complicated considering the team's general skill levels. The groundwork has been laid for an idea that we all believe in. We ran into several obstacles along the way, but were never once deterred from our goal. It was really exciting to see the first instance of the code working, and we all believe that we have nothing standing in our way regarding expanding and improving upon this foundation.

What we learned

A lot of general knowledge. Understanding the basics of environments (both global and local), how to communicate and work in GitHub, the difference between hard coding and frameworks when developing front end website code, basic machine learning concepts like tensors and gram matrices. This was, across the board, one of the most educational experiences we have collectively engaged in.

What's next for Ba-Nanos Art Generator

It would be nice to follow up on the dream of creating a more equitable solution to art generation. Our original thought was that it could be an app for casual users, but that the real selling point would be to offer it as a service for new companies looking to create a brand or established ones looking to freshen up their image. This sort of service could become a new way of employing artists by having them play active roles in the construction of the database, and providing new, company specific styles in the same vein as one would craft a unique font for company letterhead. This would of course be something that we built intentionally, avoiding the pitfalls associated with ai generated material trending more towards hetero normative white bodie. Imagine, a place for artists to not only survive but thrive, while helping to rewrite big business images with a more inclusive future in mind. Dream big folks.

Built With

Share this project:

Updates