Chronicles

It ‘s been a while since I last blogged. I wish everyone a happy new year 2010 as this happens to be the first post for this year. Lot has happened and importantly, a semester has gone past as I once again got busy doing a bundle of course works.

One of the first things to explore in the new year was gaming engines as I have been looking to create virtual 3D environments. And it became really serious after watching AVATAR, one of the first engines that impressed me was UNITY.

Being a desktop enhancement freak, yesterday after getting bored doing another coursework, thought of trying circle dock inspired by some of the concept videos. An open source version of circle dock from, Sourceforge was the one for me. It was really cool and below shared is a video of it.

However the immediate reason to write this post was QR Code. I knew there is a bar code scanner in ma phone but I have never used it or else I was never required to use it. However, today while I was going through few blogs I found it could be a great way to share urls and even contact details. You can read more on QR Code on, Nokia Mobilecodes. One of ma first attempt was to create a code carrying the blog url. It works tremendously well and I was able to visit the blog soon after scanning it on the phone which earlier I had to either type or to use a bookmark. Below I share the QR Code if you have a phone with bar code scanner you should be able to scan it with the camera.

Lonely Coder

Anticipating a release of fennac which is the Symbian version of Firefox. Browsing with Firefox on cellphone should be cool. Thank you. 🙂

Advertisements

Getting wired for the final year Project.

I’m back after a long break. Ever since, I finished ma placement I was quote up with some projects and never had time to make post. Anyway this marks the start of another huge project in ma undergraduate studies. Yes, this is all bout getting wired for ma final year project.

The Project falls into the main stream of HCI (Human Computer Interaction) which will also involve a fair bit of wireless communication and motion sensing. But the first part of the project is to control a PC with hand and to provide support for all desktop applications.

The idea is to use a web cam and track hand movements and then define various methods for simulating all possible mouse events with a set of hand gestures. And going a step further, it is also planned to provide a drawing pad kind of an application where the user can draw various symbols and directly execute keyboard shortcuts without having to press any key (or key combination) on the keyboard.

So for the first part it will involve a lot of image processing and I’ll be using OpenCV for it. I chose OpenCV because it is open source and provides ample support for motion tracking. And since it’s C/C++ based it’s easy for me to get started with it as well.

I initially wanted to setup Visual Studio (2008) and configure OpenCV on it. But I failed badly on my Vista. Though it got installed alright, I couldn’t initiate a c++ project owing to a problem in launching the wizard for it. Anyway this was a known issue and was caused due to a permission issue with one of the registry keys associated with Visual Studio.

After a bit of digging I found a nice light weight open source IDE which also supports C/C++ development. After mapping it with the compiler(MinGW) and pointing OpenCV libraries I was able to code ma hello world in a flash.

The IDE now I’m using is Dev C++ and works wonderfully well with MinGW. If you are interested you can follow this tutorial which I also followed,
http://www.cypax.net/tutorials/opencv/index?language=en

And if you are using the latest version of OpenCV make sure you don’t include -lcvcam to the linker command line. And the tutorial assumes that you have already setup MinGW if that’s not the case you may visit,
http://mingw.org/

Once you finish installing MinGW, you will also require to add MinGW bin to your path variable. Hope this will be useful if you are a windows vista user wanting to kick start with OpenCV image processing library.

After playing around with some tutorials and samples code I was able detect a moving object and bind the mouse pointer to the moving object but this looks very unstable at the moment. 🙂

Above I have used color space conversion, Contours finding and Edge Detection. And now I’m working on template matching. Hope when it’s combined with Template Matching it can produce better results. And make it a lot stable. Below I also share a screen shot of template matching (performed on an image). I’m yet to apply it on a video. 🙂

Template Matching via OpenCV

Template Matching with OpenCV

SLAX. Linux on a USB flash drive.

As things have turned out this happens to be the first post for this year. Though I wanted to blog a lot, ma work doesn’t seem to be giving me any room to do so. Anyway, Since of late I really wanted to try out a Linux Distro either in an emulated mode or to have it on a USB drive.

First I tried to run it in an emulated mode by following some of the tutorials given on PenDrive Linux. But after a series of failure I decided to change to ma second option. When it comes to Portable distributions two famous one’s that came to ma mind were Puppy Linux and SLAX. And they both have KDE.

After considering some of the capabilities/features of both Puppy Linux and SLAX, I decided to stick with SLAX because it could offer me most of the software that I was looking for and moreover, you don’t need to install any extra plug-ins to get your MP3’s and other commonly used video formats (specially avi) working. This is something I would really like to have on other distros like Ubuntu and which I unfortunately, don’t find on them due to certain restrictions (I think it’s better for me to stay out of this coz then I will be getting into patent and copyright laws and put ma self in a spot of bother).

You can find more about SLAX on, slax.org. And since, I’m using a hp pavilion dv2000 which has Windows Vista installed on it, this post should ideally suite vista users because it’s bit different than setting up your boot stick from being on other (older) versions of windows. But actually, creating it on older versions of windows seems to be lot easier than on Vista.

But to start with I should admit that there are some pre-requisites to ensure you can boot into SLAX using a pen drive. Because not all the PCs and Laptops supports booting from a USB drive. below I list few pre-requisites.

  • The PC or Laptop that you are using should support booting from a USB drive.
  • A pen drive with a minimum of 256 MB free space.

Moving on with the configurations,

  1. download SLAX usb edition (you will be downloading tar ball)
  2. download 7-Zip. (to extract the contents of the tar ball)
  3. extract the contents of the tar archive to the root of the pen drive.(boot and slax)
  4. download syslinux-3.xx.zip and extract it to your local file system
  5. copy the contents of syslinux-3.7.2/win32 folder to boot/syslinux on the pen drive.
  6. Now click on your windows start menu, type ‘command’ on the search box of the start menu.
  7. Once you are shown command prompt in the start menu right click and select run as administrator.
  8. Move the prompt to your USB drive by typing “driveLetter:” and enter.
  9. Type cd boot and press enter (in order to go to the boot dirctory in the usb drive).
  10. Type bootinst.bat to overwrite the MBR on your usb drive.

That’s it, we are done with the configurations. Now you can reboot your machine enter bios settings and then make USB drive as your first boot device in the boot sequence list. Now you should be logging into SLAX.!! below I attach a screenshot of slax while I was listening to some great tunes of A.R. Rahman.

a screenshot of slax

One of the coolest things about SLAX is that it not only shows other file systems but it also allows you to write to those which really makes life lot easier. Since SLAX is module based and modules get installed on-the-fly you never need to login and install anything. All what you need to do is just download your preferred module and copy to slax and next time you boot into slax, you should be able to use your new app, easy as that.

I really enjoy ma time on slax and I hope you will consider SLAX next time when you wanna go portable as well. Cheers!.

7 Symbian Apps on a N95 that could make a difference

People come from diverse backgrounds and hence, they have their own interests and preferences when it comes to food, cloths and every other aspect of their life that you might imagine. And it’s quite the same when it comes to choice of softwares as well. People have their own interesting preferences. That’s what we come to know by looking at the number of softwares that are hitting the web every day. Everyday you wake up in the morning, there is some new software waiting for you. So, one can always expect for new applications, doing interesting things or even new application doing the same old thing but in a different way and most importantly they all have their own market place. It’s just amazing and I think it’s great.

And below listed are 7 symbian applications that really made an impact on me. Lonely Coder writes this with the only intent, one or two of these might be of your interest as well. And again I remind you, these are only ma interests based on what I do and what I wish to do. So In case, if you don’t find any of these to quake you, then Lonely Coder would like to apologize you in advance.

1. Rotate Me

This is first out of the lot to be installed on ma phone, still I find really interesting coz it is so sensitive to ma movements.

Generally, in iPhone this comes bundled that’s where it senses the orientation that you holding your iPhone and changes the phones’ display orientation accordingly (motion-sensing orientation of the display). This will only have a 900 switch which means the display will change between portrait and landscape but only in two directions (not in all four directions as could be).

I wanted to have this feature in N95 because there is an in-built accelerometer in N95 as well, that’s where I found RotateMe.

rotateMe

2. Step Count

A Nokia Labs Software again an application of accelerometer. Once you configure it with your height, weight and age. It will start counting the number of steps you walk, the distance covered and the energy burned in the process. So the next you walk make sure you install this app and put it to run in the background.

Later you can use this to analyze your trends, on daily, weekly and monthly basis. Hope you will enjoy your walk with Step Count.

Step Count

3. Blacklist

Having trouble with nuisance calls? then this is for you. Add all the numbers that you hate and activate it. That’s it, no longer you will calls from the black listed numbers. Unfortunately, it will not prevent messages from those numbers, you will still receive messages. And the most important part of it is that though it doesn’t allow a black listed number to reach you. It will still maintain a log where it will show how many times the poor guy has tried to call you and failed with date and time.

BlackList

It’s that easy staying away from all unwanted calls with BlackList.

4. World Mate

Are you into traveling? Have you ever wanted to check check your flight schedule on right on your mobile? Yes you can all all that with piece of software. More over it can give you scheduled whether reports depending on your location which it will read out for you, and also currency conversion. All this requires a GPRS connection and it’s enough to update it once a day. Which is not gonna cost you a big some of money either. It really has it’s worth if you are a traveler.

But, In order to access some of its services you must sign-up for a premium account.

World Mate

5. Calcium

This I like purely because of it’s usability over the in-built calculator that comes with nokia smart phones as most others do. The biggest problem with the default calculator beside all its capabilities is that the time it takes for you to perform a sum and most importantly, the number of keys that you have to press in the process.

For an instance if you are to perform,
7*4+2

  • with the default calculator you will have to make ten clicks
  • With the simple navigator based Calcium calculator it only takes you 6 clicks

Calcium

I think this would give you a better idea as to why one should prefer Calcium over the default calculator. Assume you are out shopping, which one do you think will be the handiest? It is Calcium. I’ll give 100% for both its usability and simplicity.
Yes; Simple things should be made simple.

6. X-plore

If you are primarily a computer user no-doubt you will be on the look out for a replacement for Windows Explorer if you are having a windows box or else if you are a UNIX user you will lookout for a replacement of Nautilus in your phone.

That’s where X-plore can be handy for you. It’s an state-of-the-art file explorer for your phone. I don’t think I’ll even be able to list out all it’s capabilities purely because it can do a lot of things for you. X-plore, can almost give you the feel of a computer right in your phone.

X-plore

7. Screen Shot

Last out of ma selection but never means the least. I think you have already seen it in action. Since, all of the above screen shots are taken via Screen Shot. You can set up a button or a combination of buttons to use it. Once, you activate Screen Shot you can start taking your screen shots by pressing the button(s) that you have configured.

Hope you enjoyed it. Your feedbacks are most welcomed.

Reassign the “standard” output stream

Today ma biggest task was to digg into redirecting/reassigning the standard output stream to a file(text file). In our case we actually wanted stop anything and everything from being sent to the standard output or the console (command prompt [in windows!!]) as usual coz later we want to check all those output against an expected output file and look for any changes.

Initially I thought it’s going to be a tough task and will take hours. But fortunately it was not the case, It was fairly simple! here I share a simple code to exploit it. I’m sorry the code is not that tidy.


import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintStream;

public class Lonely {

private File fl = null;

public Lonely() {
try {
fl = new File("stdOut.txt");
fl.canWrite();
System.setOut(new PrintStream(fl));
System.out.println("Writing..");

} catch (Exception e) {
e.printStackTrace();
}
}

private void printOut() {
System.out.println("Hi everyone");
}

public static void main(String[] args) {
Lonely l = new Lonely();
l.printOut();
System.out.println("have a nice day!");
}
}

Getting your Gmail feeds.

Download Podcast

Few days back while I was checking ma mails, I just clicked on the rss icon that appears on the right corner of the address bar (on firefox) which to me to a page where it was showing few of the most recent mails in the inbox.

Which you can check on,
http://mail.google.com/mail/feed/atom

I actually knew this quite some time back via a post of a fellow blogger. But Then I dint have much of a time to explore on it neither I was too interested on it by then. Anyway this time around I thought it’s time for me to get some insight of it.

The feed shows few of the most recent mails in your inbox together with few lines of the body of them as well. This becomes really handy if you are in a real hurry or even if you want to check your mails in your mobile because compared to getting there using the traditional login, this seems to be really fast.

It can be used to check whether you have received any new mails after you logged in for the last time and so on. But unfortunately, one will hardly be able read the content of the mail in whole unless the mail is so short that it will not exceed two lines or so. And getting any attachments is almost impossible as it stands now.

Just to exploit on it I have developed a simple page which makes life easier if I’m to access my feeds. The URL is given below. But I really don’t suggest you to go ahead and use it. And if you are using it remember, it’s on your own risk.

A customized Login

The page above utilizes https://username:password@mail.google.com/mail/feed/atom mode of accessing Gmail feeds, so there one only requires to give the username and the password and it take care of the rest. Otherwise it could be potentially dangerous to use this method since your password will be revealed (because the address bar will never mask your password) in that case you better stick to the very first URL on this post.

Anyway I think it’s always nice to know few other ways of getting there as it may turn out be useful one day when you are stranded and when you have no other options. Hope you enjoyed it. Cheers.!

Interactive Pages

Podcast

It’s been a long time desire of mine to develop an interactive web page with draggable content. But only in the recent times I could get hold of it. So today on my leisure, I developed a simple page to exploit it. Should say very simple at that because they say simple things should be made simple.

So I don’t think its worth writing on it. But trust me, it really worth a visit to it. A link to the page is given below. So one can follow it up to check it out.

Go Interactive

Somehow I think I have managed to do something for children. Well I actually wanted to do it that way! Anyway, should note that it was only checked on firefox. Feel free to drop in your comments, Have a good day.