Tuesday, August 07, 2007

3DISE project proposal rejected

Almost one year after submission to FCT (Portuguese Foundation for Science and Technology), we got the feedback on 3DISE project proposal. Unfortunately, it was not accepted for funding.

Monday, August 06, 2007

Copying multiple files with SCP

I needed to copy several files from one remote host to another. To that end I decided to use scp, but if I simply write one "scp" command for each file I must provide the password each time I enter a command, besides having to repeat the command several times. Fortunately this can be done in a more efficient way. Indeed it is possible to use normal shell expansion, just make sure you use quotes to ensure that it isn’t parsed and expanded by the local shell instead of the remote one. Thus, the command should look like:

% scp me@host:"teste1.zip,teste2.zip,teste" .

Wednesday, July 11, 2007

Surveying 3D shape descriptors

In last couple of weeks I've been reviewing existing techniques for 3D shape description. This research have proven fruitful and I'm planning to produce an exhaustive survey within the end of this week.

Wednesday, June 20, 2007

VRML reader for CALI/3D

In the context of our work on 3D shape recognition (CALI3D), Lisha Zhang developed a simple VRML file reader that converts the original shape into a triangular mesh and computes its axis aligned bounding box. An executable version of this prototype is available for download [ZIP 48KB] , together with a sample shape extracted from the National Design Repository at Drexel University.

Original Shape
Resulting Shape and corresponding Bounding Box

Tuesday, May 29, 2007

LaTeX template for MSc thesis

For master students of Instituto Superior Técnico who are writing their master theses, I made available a LaTeX template for IST MSc Thesis [ZIP 253KB]. This is based on the version I used to write my master thesis, back in 2004. I hope this could be useful for someone.

Tuesday, May 22, 2007

Converting FAT32 to NTFS

My new Acer Travelmate C200 came with Windows XP Tablet Edition pre-installed. No problem with that. Until now everything seems fine, except for two small problems. The 100GB hard disk is formatted in FAT32 and it has the Portuguese version of XP installed.

Change the operating system langauge is trivial. I just needed to change the user interface language on the "Languages" tab of the "Regional and Languages Options".

To convert the drive file system from FAT32 to NTFS, I had two options: recreate the partitions and reinstall everything again or convert the file system format. I chose the second. Although I had never tried it before, it seems quite simple. It can be done by an Windows XP built in utility. I only needed to type two simple commands:

% vol c: (to find out the drive's volume name - it will be necessary later)

% convert c: /fat32:ntfs (the system will restart a couple of times)

It worked well with me. After a few minutes I have a NTFS file system in my new Acer.

Tuesday, March 06, 2007

No help text in wxWidgets Status Bar

I am writing an application in C++ and I'm using wxWidgets. The application user interface includes a toolbar and a status bar. Automatically wxWidgets assumes that I want to see the help text for toolbar buttons (or for menu items) in the first field of status bar. Even if I have no hint text specified it clears the respective field of the status bar.

After a few hours trying to overcome this "problem" (or "feature", if you prefer), I found the solution after carefully reading the manual. It is not necessary to override the wxEVT_TOOL_ENTER, as I was trying to do, although it can be done this way.

The solution is incredibly simple. I just need to call SetStatusBarPane(-1) for the corresponding frame. This disables help display in the status bar.

Tuesday, November 21, 2006

Replacing ANSI Portuguese characters by HTML entities

In order to improve the quality of web pages, characters in the upper half of the ANSI table should be replaced by corresponding HTML entities. Otherwise, browsers with different configurations might show incorrect characters.

To automatically replace these characters, I wrote two small bash scripts. The first, html_entities.sh, performs the replacement in na single file and the second, exec_html_entities.sh , recursively replace characters in all files in a given directory and all its subdirectories.

Saturday, September 09, 2006

SIBR prototype installation deployed


A couple of years after finishing the Sketch & Image Based Retrieval prototype, I finally had time to prepare an install package of this application. This package includes a brief user guide that will help users through configuration and drawing set classification process.


The SIBR prototype is available for download here.

Friday, September 01, 2006

3DISE proposal submitted

Our project proposal for the 3D IST Search Engine was submitted within the deadline. Now it's time to focus again on QiQA.

Monday, August 21, 2006

DrawingReader deployed

To allow easier analysis of part drawings, I developed a small tool, called DrawingReader. This tool reads vector drawings (currently DXF's) and is capable of run simplification and polygon detection algorithms in the drawing. With DrawingReader I expect to be able to easily test the changes and improvements I will make in the feature extraction algorithms.


Screenshot of DrawingReader prototype.

Friday, August 11, 2006

Backing up my data

After this lost week, fighting viruses in my computer I decided to do something I should have done a long time ago. A complete backup of my data. Therefore, I have just finished to store the contents of "My Documents" and my e-mail in DVD, backing up more than 3GB of compressed data.

Thursday, August 10, 2006

Major virus infection solved.

On last monday, my computer was infected with a virus. After more than three days of hard work I was able to clean it up. Indeed I had to remove three different trojans. Anyway, it's all fine now and I can resume my work.

Tuesday, July 11, 2006

SIACG 2006 in Santiago de Compostela

Last week I've been in Santiago de Compostela (Spain) to attend the 2006 Ibero-American Symposium in Computer Graphics (SIACG 2006) . There I presented a paper focusing hand gesture detection using CALI. Together with Ricardo Jota and other Portuguese colleagues we saw the semi-finals world cup game between Portugal and France, which we loose. But besides that major drawback and the fact that, due to mechanical problems, I had to give up making the trip in my motorbike, this journey was very fruitful and funny.

PS: Anyone have some pictures from SIACG?

Thursday, June 01, 2006

Unexpected Deadlocks!

Yesterday, I spent the whole afternoon trying to fix a bug in EditION application. After a few hours of despair, I finally found the source of the problem. Its was caused by an unexpected deadlock of the working threads. Despite all my efforts of avoid such situations when programming threads, I relentlessly inserted mutex lockers inside class destructors. This was a very bad idea. Usually, a destructor calls other destructors. This way, an unexpected deadlock can easily happen.

Thus, yesterday I learned an important lesson: Thread synchronization in destructors should be used very carefully.

Wednesday, April 19, 2006

New version of QiQA UI

User interface for QiQA query application was redesigned. To use a large number of textual fields in the query it was necessary to change the way textual queries are introduced. Below is illustrated the non-functional prototype of the new user interface.


Redesigned user interface for QiQA

Monday, March 13, 2006

QiQA classification module "talks"

I have been developing the QiQA (Quick Quotation Assistant) classification module. This should index existing documents in several computers into a centralized server. After this classification, it will be possible to make keyword searches in the server and find related documents. Currently, I am focusing on communication (RMI-based) between server and clients. The user interfaces and basic communication features for both server and client are now implemented.



Click to enlarge.
QiQA classification module

Thursday, February 16, 2006

Return of Deflektor

The last time I developed anything in Java was a few years ago. The "Deflektor" project, in which a team of collaborative agents play on their own this old-times game. Since I now need to create in Java a distributed application, I decided to take a look at "Deflektor". After a few hours, I was able to run it properly.


Deflektor and agents working.

Monday, February 06, 2006

Trip to Plzen

Last week I've been in Plzen (Czech Republic) attending the 14th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision (WSCG 2006) . There I presented a paper, titled "A Calligraphic Interface for Managing Agents". Besides showing our work, I saw what other researchers on computer graphics, visualization and computer vision are doing. Despite the freezing cold, as you can see in picture below, everything runs smooth.


Freezing in the University Campus.

Tuesday, January 24, 2006

BareHandCALI with marks

Extending the work developed with Ricardo Jota in BareHandCALI, we integrated in this prototype the mark detection algorithms implemented by the MultiModal Painter team. It is now possible to see on screen the features extracted by CALI from hand poses, using both mark or markerless detection.

0