Inspiration

As avid gamers and passionate Web3 enthusiasts, we were deeply dissatisfied with the lack of personalization options available for avatars in both Web2 and Web3 games and social media platforms. It became evident that users were often confined to choosing from a limited range of pre-designed avatars, leaving little room for individuality and true self-expression. Motivated by this observation, our mission was to create a groundbreaking tool that empowers users to effortlessly craft highly customized avatars that authentically represent their unique identities.

These avatars serve as powerful assets within the metaverse, playing an integral role in online games and fostering realistic interactions among individuals. By enabling users to create lifelike digital representations of themselves, our tool elevates the immersive experience of the metaverse, bridging the gap between virtual and physical realms.

Moreover, the application of our tool extends beyond gaming, as it revolutionizes NFT ticketing and verification systems. Through the use of our avatars, we ensure that the ticket holder is unequivocally the same person presented in the ticket upon entering an event. This breakthrough technology expands the realms of NFT ticketing to encompass both virtual and physical interactions, facilitating seamless connections and experiences within the metaverse and among its inhabitants.

What it does

Alias is an AI-powered 2D image to 3D NFT avatar generation tool. Simply upload a 2D picture to create a 1:1 3D NFT avatar for metaverses/social media!

How we built it

Our front-end comprises HTML, CSS (Tailwind), and JavaScript (React), which was then hosted on AWS. Wallet integration was achieved via the RainbowKit Wallet SDK and wagmi. Out frontend was deployed onto Spheron Network, a decentralized hosting solution using ipfs and filecoin.

We leveraged the OpenZeppelin Contract Wizard for the ERC-721 (NFT) standard and Web3.storage (Filecoin) for hosting our metadata on IPFS. The contracts were deployed on Fantom, Theta Network, Shardeum, and several other EVM-compatible (test) networks.

We used the PIFuHD model (Pixel-Aligned Implicit Function for High-Resolution Human Digitization), a neural network model to reconstruct 3D human bodies from 2D images (credits: Facebook). Using this model, we made an API (and leveraged AWS to host it). Given any 2D image of a person, PIFuHD can generate a 3D avatar! Our efficient Flask API handles heavy AI processing while making clever optimizations. It seamlessly integrates with Pinata IPFS, generating avatars, model OBJ files, and metadata for NFTs with ease.

Challenges we ran into

  • Front-end (second time building with React)
  • ApeWorX (slight adjustment from Hardhat)
  • Powershell. (our smart contract dev uninstalled Windows and switched to Linux midway)
  • Time crunch (final exams/family vacations curtailed building time)
  • Limited developers (two-person team for entire project)
  • Had major trouble deploying our Flask REST API that serves the AI model due to limited compute resources (after many hours of work we resorted to only deploying localhost)

Accomplishments that we're proud of

  • Built with React (devs are primarily back-end)
  • First time using ApeWorX and PyTest (migrated from Hardhat)
  • First time using PIFuHD
  • Being able to fully accomplish creating middle ware between the contract, ipfs storage, REST API, wallet, sending transactions, and front end to serve everything
  • Intersecting AI and blockchain!
  • Built this as a two-person team!
  • Fantastic UI!

What we learned

  • React advanced state management for interacting with REST API and wagmi
  • Flask
  • Producing CLI commands through Python to interface with the PIFuHD model and using it to create a server like approach in backend
  • wagmi (started off extremely difficult)
  • RainbowKit SDK
  • ApeWorX
  • PyTest
  • PIFuHD model and its inner workings!

What's next for Alias

  • UI/UX enhancement
  • Real-time filters (for streaming/video conferencing); requires constant webcam/camera input instead of singular image.
  • Payment plan (subscription or freemium model; possibly API leasing)
  • Social media/video conferencing filters of avatars -Produce full-fledged NFT ticketing with avatars for verification and interaction in the metaverse

To navigate out code.

Our contract code is located in the Alias GitHub on the master branch. Our front end code is located on the Alias GitHub on the frontend branch. Our REST API code and our ML code interacting with PIFuHD is located on the AliasBackend GitHub on the main branch. The checkpoints do have to be downloaded separately and put into the right folders as they were too large of models to be uploaded onto GitHub. Visit the PIFuHD GitHub for more information on downloading the checkpoint using the shell script which is available on the backend GitHub.

Built With

Share this project:

Updates