gif2avt
0. Introduction
gif2avt is a GUI program that lets you make an egghead-compatible snapshot out of a regular snapshot. Avarcron, a prototype humanoid avatar for a CVE Unicron, lets you choose a type of the avatar's head. It could be either egghead or blockhead. For blockhead you may use a regular snapshot, however, for egghead you need a specially edited picture that would be wrapped around the egg- shaped head and still looks pleasing. Producing such an edited picture can be tedious and time-consuming. Thus, an automated procedure of converting a regular snapshot to an egghead-compatible one is sought. This is the motivation behind the develpment of gif2avt.![]()
Fig 1.1. Egghead Fig 1.2. Blockhead The egghead feature has a few advantages over the blockhead. First of all it is more recognizable from the side and back. The blockhead is a 2D snapshot that cannot be viewed at all due to its flatness, however, the egghead lets others see whom the avatar belongs from both sides and also from the back.
1. Design/Implementation
Since it is a prototype and the expected users may not have much experience in using GUI applications, gif2avt is designed for simplicity. The coding effort is thus at minimum but enough to achieve the goal of proving a regular faceshot to egghead-compatible conversion.Fig 2. Snapshot of gif2avt When a snapshot is selected by a user, it is placed on the center of gif2avt. The size of the snapshot does not matter, as it is resized, when uploaded, to 128 pixels by 128 pixels. Then the user can select a rectangular area (a tile) from the picture to be the background of the egghead-compatible faceshot. Once the user selects the tile, it is copied over and over on the bottom right corner of gif2avt in the size of 256 pixels by 256 pixels. Then the user can select the face from the picture, which would show up on the center of the tiled aread on the bottom right corner.
![]()
Fig 3.1. Before Fig 3.2. After
2. How to Use
Please, follows the simple steps to use gif2avt: 1. Import a picture into the GUI 2. Press "capture" button under Step 1 3. Select a background by click-dragging 4. After selecting the backround, Press "Stop" under Step 1 5. Press "capture" button under Step 2 6. Select the face area by click-dragging 7. After selecting the face, Press "Stop" under Step 2 8. Press "Done" button on the bottom3. Future Work
There is a lot of room for improvement for gif2avt. The current design is very crude and primitive in that it uses hardcoded values during the conversion process. We are currently looking at ways to dynamically sets the size of the coverted picture that results in the most recognizable and appealing egghead shot. In order to achieve this, we are looking for the optimal size of the face, which is to be put on the tiled background. We saw that unappropriate sizes of the face result in excessive stretching, which makes the egghead looks horrible. A better way to capture the face and tile area is being renovated. The current way makes use of a simple rectangular capturing scheme. However, the rectangular picture looks out of proportion, when stretched over the egghead. Thus, capturing the face or the tile by connecting a series of points selected is about to integrated into the application.4. Conclusion
This brief online paper described the design, implementation, and usage of the GUI application gif2avt, which converts a regular GIF(or JPEG) face picture to an egghead compatible one. Simply speaking, it lets user(s) capture a portion of a picture and then tile it over and over to make up a background in a certain size, and capture another portion of a picture and then put it on the center of the tiled backgroud. This project still has a big room to grow, as it needs much improvement. Sooner or later, we will achieve more realistic representation of a user in our CVS, Unicron using this technique.