Inspiration
We are inspired by GPT Zero which detects AI generated content. DALL-E is a AI picture generator by OpenAI. We want to build a product like GPT Zero which could help users to recognize whether the picture is AI generated.
What it does
DALL-E Zero ask for user to upload a picture and detect if it is generated by AI and give result back to users.
How we built it
We built DALL-E Zero in python. We used CIFAKE as our model traning and test datasets, we preprocess the images by OpenCV and pandas which turns images into pixel matrix and frame it suitable for training. We define our CNN model by tensorflow and feed our preprocessed data into our model. Our front-end is a User interface that is constructed upon HTML, with the styling feature and Javascript Functionalities. Basically, the front-end reads a JPEG image from the user and resize it to 32*32(the size that is accepted by the CNN model), send it to the model and send back the results.
Challenges we ran into
- We had problems with preprocessing the images due to the complexity of the file names.
- Initially we wanted to use Google Colab for our project but it end up crushing.
- Training model with limited hardware gives us a hard time waiting for model response and debugging.
- Our frontend only takes in JPEG formatted as input but backend only accept matrix value as input.
Accomplishments that we're proud of
We are proud that we have achieved a 92% accuracy on our DALL-E Model. We also found out algorithm to convert complex file name into valid path and then frame it into dataframe. We are also proud that we found out a way to connect image input frontend to backend.
What we learned
We learned to preprocess the image data using OpenCV, the detail algorithm of CNN, the way of training CNN model in python using tensorflow, and converting picture input from frontend to backend.
What's next for DALL-E Zero
The Dataset we used so far is limited, we can make our model more comprehensive by using larger datasets We could develop our dynamic growing database by collecting input and feedback from users for new data We want to improve our webpage by making it more interactive and informative to users
Log in or sign up for Devpost to join the conversation.