8
Dec

The real “Internet Technology and Applications”

End-semester exam tomorrow and still the best use of my time, I find, is in bringing ideas to life in cartoon strips. I mean, what better “application” of “internet technology” (by the way, this is the subject whose exam I have tomorrow) than to create troll face and stick figure comics strips.

Here are the two I made till now: (of course images come from Google – internet technologies, eh?! ;) )

And this one too, (dedicated to someone! :P )

Now that is a better use of my time than studying HTML and CSS a 10 year old knows about. You are not supposed to teach that to a B.Tech. class in their final year! Moronic subject!

0
30
Nov

Panorama Generator (Image Stitcher)

While it itself is not our project, it is part of a larger scheme of codes that will lead to an awesome system. The Panorama Generator can, as of now, combine multiple images given to it in any order with a good enough accuracy.

We developed this in C++ using OpenCV library for image processing functions and implemented the system using SIFT (Scale Invariant Feature Transform) features extracted by applying Gaussian filters, taking their differences and locating the scale space extrema points. The feature matching process gave the displacements of the images finally resulting in the panorama generation.

Here is an example input,

And shown below is the output produced by our system,

Doesn’t that look good? :) That is a view from ONGC Bridge (Surat, India)

Still, we plan to make many improvements in the system. There are still a few glitches. However, we might keep them for a little later till the time we can complete our whole system (more than thrice the size of this project).

Great! See you later!

0
19
Nov

Natural Language driven Image Generation

This particular topic was the one I gave my final year seminar on recently. The task at hand was to generate images from natural language descriptions. For example, a description such as “the cat is  on the table” will lead to a scene that depicts this scene.

Such a system has multiple applications such as story understanding, scene reconstruction, robot-robot communication, robot planning, etc. The topic is a very interesting one with still a lot of research to be done. Here is the presentation I gave. Natural Language driven Image Generation

If you do download it, hope you have a good time going through it! :)

0
31
Oct

Gluttonize()

I don’t know who or what it might have been, but something caused that function call (that you see in the title) to occur because I have been eating like Bugs Bunny in a Looney Toons episode for the past couple of months. Not carrots, of course.

Dabelis, vada-pavs, samosas, pastries (dutch brownies), burgers, sandwiches and ice creams are just a few of the things in my long list of diurnal munchings. A glass or two of Cocoa or Lassi is considered usual now. There is just not enough taste in the city to satisfy me. The first thought that came to mind on visiting Northern India during Diwali vacations was to hog on a lot of alu-tikki chat.

Lastly, let me dedicate my newfound Gluttonism (if I may invent such a word) to an awesome (and cracked! :P ) college friend who used to eat quite a lot more than this until I started. While becoming a glutton in the true sense of the word has been a lot of fun, I think it will be good to get out of this habit soon. :)

#Random

19
Oct

Placed @ Microsoft !

This is good. Finally, I got into Microsoft. While I was not eligible to sit in the interviews for India Development Center (since it has been only 3 months from my last interview there), I was selected for an FTE (Full Time Employee) position at Microsoft IT. The same Hyderabad campus all over again. It is going to be awesome! Working with the likes of such people should give me immense experience and knowledge.

If my internship was such a great learning experience, I can only imagine how invigorating it would be to work at Microsoft as an employee. The plans for going for an MS are on hold for now. I will indeed be joining Microsoft and continue with my higher studies at a later point in time. :)

Looking forward to it! :)

16
Oct

ICPC 2011 Online Round – Amritapuri ! Yay!

Hah! Solved 4 out of 5 and ended up with a position of 40 among 779 teams. Not bad :) Seeing that only 8 teams were able to solve the 5th question, I think we did fine. But we certainly could have done better. There were 5 questions out of which 2 were laughably easy. Another one just required some insight into the working of AND and OR operators (Check out the question and its solution here on my other blog – Sub-Sequences).

The last one that we solved could have been submitted in half the time if we had figured out beforehand that BigInteger (or the like) would be required to calculate all answers correctly. We coded the solution in C++ and got a Wrong Answer. 20 minutes before the end of the competition we realized our mistakes. In a race against time (dramatizing it a bit ;) ), we coded the solution in Java using BigInteger and got it Accepted 2 minutes before the contest ended. :)

On the whole a good experience. The solutions for the two moderately difficult questions is already up on http://allaboutalgorithms.wordpress.com. Go see if you understand my explanation ;)

PS: Being the only team from our institute to solve 4/5 questions, we will certainly qualify for the on-site round once again :D \m/

14
Oct

Why our B.Tech. syllabus is justified

The first year of my bachelor’s degree went away in figuring out how subjects like Physics, Chemistry, Environmental Science, and others like these would help me with computer science. At that point, it felt as though the college was doing us a great wrong by wasting our time with such nonsense. I mean, why should I study the most hated chemistry when I opted for my beloved Computer Science.

I see it all very clearly now. And this post is for those people, who used to or still think the way I used to in my first year at NIT, Surat. No field can work on its own. Especially, computer science. We are the back-end to all fields. They depend on us to make their work easier and in turn, we fulfill our passion of programming by delivering products and conducting research on novel topics.

All that we were taught was useful to one person or another. The physics, as basic as it was, was appreciated by the senior who worked on Quantum Computing. The chemistry was useful for the classmates developing a software to handle chemical reactions. Knowledge about mechanical drawings and such was used by creators of AutoCAD and other such applications.

Another misconception was that B.Tech. would be all about programming day in and day out. I didn’t know that they won’t teach us Java, or other such languages. It was as late as third year when I realized the real purpose of the current B.Tech. curriculum. While it has its negatives, the subjects that we are taught (w.r.t. computer science) are going to be used by all of us when we go into industry/research. After all, as my department’s HoD put it,”If you wished to learn programming languages and application development only, you should have gone for a BCA”.

It took some time to realize that languages are not as important as the concepts. The workings of the operating system and the network are more important than simply sitting in front of a machine typing away without knowing how it all works in the background. That is the real beauty of computers. And while I hate Software Engineering as a subject (since it is so logical), I realize now that not everyone would plan so much before building a software. I have seen people jump into the code right away without looking at the bigger picture and they end up scrapping their code.

I could go on to explain why each and every subject we have studied so far is important. But I guess I have already written more than anyone would like to read :D So let me just put a “.”here.