meta data for this page
This is an old revision of the document!
iMagine
- Sanaz Ahmadi
- Teemu Kinnunen
- Jukka Lankinen
Idea
Organize images using only visual information, so that the user can find particular type of images easily. The system will organize images on the 2D map in the way that similar images are close to each other. Advantage of visual information is that user does not need to label all of his/her images to make searches.
Features
User can
- Get a list of similar images from the server using visual information and visualize it
- Browse image collection (Image map/gallery)
- Sync the image collection with the server with many devices
Optional features
- Share images with other users directly using mobile devices
- Image tagging and automatic learning of labels (image categories)
Implementation Plan and Goals
Server
- Image categorization using bag-of-words model (DONE)
- Syncing with clients (DONE)
- Set up the server in the Internet (DONE)
Client
- Syncing with server (DONE)
- User interface design (DONE)
- Settings page
- Image folder (kind of DONE!)
- User information (user id, password) (DONE)
- Server settings (host address) (DONE)
- Image categorization (DONE)
Design
The framework
The protocol
Server
Apache server with PHP responding to queries from user using HTTP. User information is stored in a database so new users can be easily added. We also have a bunch of binaries which do the heavy image processing operations.
Client
For client, we used Qt. We had two views: main view and image view. User interfaces were very simple and dynamic, so we decided the build them by coding them instead of using Qt Creator. The connection between Qt Creator and code was bit confusing thus generating layouts and views manually was easy choice.
Main view uses a scrollable area and a grid layout that is inside the scrollable area. Inside grid nodes, we have added home brew custom widgets. These custom widgets stack multiple images together to illustrate some example images from the virtual directory.
In image view, we use 2×3 (rows x cols) grid layout where left and right buttons are in the top left top right cells and home button is in the bottom left node. The image tooks two columns from the middle.
QT Mobility pack We are using core gui and network packages.
Screen shots
Our Main view stacks groups of similar images into kind of virtual directories. User can go inside the virtual directory by clicking it.
In Image view we show images inside a virtual directory. User can browse these virtual directories using (<) left and right (>) buttons.
Project Artefacts
Presentation slides
Our presentation slides in pdf format can be downloaded from here.
Report document
Source Package
Still WIP, but here: Latest version
How to run software
- Download and unzip the package
- Compile source and run!
- Register new user account at the http://hive.dy.fi/~users/qtcodecamp/qtcodecamp.php
- If you get “REGISTER 1”, It means your registration was successful!
- Open the application and fill in the user name, password and image directory.
- BROWSE image stacks.
- open stacks by clicking and browse stack contents.
If you encounter any problems, please send email to Jukka Lankinen or Teemu Kinnunen!