## Friday, May 10, 2013

### Watch Pronunciation

 Audemars Piguet: OH-duh-MAHR PEA-GAY A. Lange & Sohne: AH Lung-Geh Oohnt Sew-neh Baume & Mercier: bohm AY mer-SEE-AY Bedat: bid-UT Breitling: brEYE-tling Bulgari: bull-gar-EE Carl F. Bucherer: Carl F BOOK-er-er Cartier: Car-TEA-AY Chanel: Shan-el Chopard: Show-Par Concord: Con-cord Corum: Core-oom Cvstos: COUS-toss De Witt: Dah-Wit Dior: DEE-oar Ebel: AY-bell Franck Muller: Fronk MEW-ler Girard-Perregaux: Jee-rar Pear-ago Hublot: OOH-blow IWC: EYE-DOUBLE-YOU-SEE Jaeger-LeCoultre: YAY-ger Le-Cool-ter Movado: Moe-vah-doh Oris: Oris Panerai: Pun-a-rye Parmigiani: Par-mi-GEE-ah-NEE Patek Philippe: Pah-tek Fee-LEAP Philippe Charriol: Fee-LEAP Shar-ee-ole Piaget: PEE-ah-JAY Raymond Weil: Ray-mand WHILE Richard Mille: REE-Shar MEAL Rolex: Row-Lex TAG Heuer: Tahg Hoy-er Ulysse Nardin: YOU-lis Nur-den Vacheron Constantin: Va-sher-own Cone-Stun-tuhn Zenith: ZEE-nith

Reference: http://www.gemnation.com/base?processor=getPage&pageName=watch-pronunciation

## Monday, April 22, 2013

### Unit Axes of a Cube

UnitAxes = ...
[1 1 -1;...
1 1 0; ...
1 1 1; ...
0 1 1; ...
-1 1 1; ...
-1 1 0; ...
-1 1 -1; ...
0 1 -1; ...

1 0 -1;...
1 0 0; ...
1 0 1; ...
0 0 1; ...
-1 0 1; ...
-1 0 0; ...
-1 0 -1; ...
0 0 -1; ...

1 -1 -1;...
1 -1 0; ...
1 -1 1; ...
0 -1 1; ...
-1 -1 1; ...
-1 -1 0; ...
-1 -1 -1; ...
0 -1 -1; ...

0 1 0;...
0 -1 0];

## Thursday, September 13, 2012

### Rotating 3D Figures in Octave

When Octave.app is executed, input the followings
> close all
> setenv ("GNUTERM", "x11")

There you go.

I'm sharing this original post from http://octave.1599824.n4.nabble.com/rotate-3d-graphics-td1638659.html

### Delaunay Triangulation and a Plane

When reconstructing a surface especially in three dimensional, its almost inevitable that you need to generate planes based on a set of vertices. In the case, when the facets are unknown, we basically have a cloud of three dimensional points. Based on the cloud of points, our eyes may be able to tell us what the sillouette or the contour of the three dimensional model in question is; however it is quite difficult or this is not trivial and it is a well-studied problem in computational geometry.

Certainly, there are a lot of recently proposed and well-developed methodologies for estimating or reconstructing a surface based on a given cloud of points. This post is written just to provide an idea of one of the basics: delaunay triangulation.  In short delaunay triangulation is to create a triangular mesh for a set of vertices that meets the Delaunay conditions(the main idea is to prevent any surface-within-a-surface).

In matlab, it is fair easy to follow the example (provided by Matlab).  Or if you want to explore further, you can try to make a cube. Basically you just need to write down the vertices and let Matlab do its job. I will leave the readers to do this on your own.

X, Y, Z are the column vectors of a cube(meaning all the x coords, y coords and z coords, say you have 2 vertices (0,0,0) and (0,0,1), X=[0 0]; Y=[0 0]; Z=[0 1];).

> dt = delaunay(X,Y,Z);
> trimesh(dt,X,Y,Z);

Now, that's pretty straightforward. However, if you have a problem similar to mine, when you only want to create a 3D plane with delaunay(you have your own reasons, i don't have to tell you mine). In the above example, if you only specify one of the faces of the cube, Matlab will probably tell you that they cannot proceed because all vertices are on a plane or are co-linear.

In order to do so, you need to trick Matlab into thinking the plane is no longer a plane; basically you just have to 'extrapolate' the plane in the perpendicular direction

Originally
X =[0 1 1 0];
Y =[0 1 1 0];
Z =[0 0 1 1];

Perturbed
X =[ 0 1 1.01 1.01 1 0];
Y =[0 1 0.99 0.99 1 0];
Z =[0 0 0 1 1 1];

Running the same command in the previous section should give you the following rendering.

## Tuesday, July 31, 2012

### (Medical) Imaging / PACS / DICOM / Health Informatics Conferences

Month-view of conference submission deadlines (on-going update)
 HI HIC AMIA, HAC APAMI BHI MI CARS MICCAI, MIUA HAMLYN SPIE(MI), SIPAIM ISBI, RSNA ECR CV ICIP ICCV ICPR, ECCV, IPCV BMVC, CAIP ACCV, SIBGRAPI ESR, ICPRAM CVPR Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
tr> tr>
JournalFieldIF
JACC: Cardiovas ImgMI5.528
Circulation: Cardiovas ImgMI4.757
Med Img AnalysisMI4.364
J of Img SciMI/CV4.5
IEEE T Med ImgMI3.639
J American Med Inf. Asso.MI3.609
IEEE T Img ProCV2.918
Int J Cardiovas ImgCV2.539
Int J Med InfHI2.414
J of Dig ImgMI/CV/HI1.421
IEEE T Pattern AnalCV4.908
Pattern RecognCV2.292
J Mach Learn ResCV2.561
HI      Health Informatics
MI     Medical Images, Radiography, DICOM, PACS
CV    Computer Vision, Pattern Recognition, Machine Learning

TO DO:
- submission type
- other details

## Wednesday, July 11, 2012

### From Microsoft Word to Latex

As much as I want to work on my papers in Microsoft Word, its been proven minutes by minutes that working on an academic research paper is not feasible without the use of LaTex.  Here, in this article, from a 'noob's perspective, I will lay down some of the fundamentals that you will need in order to have  your latex environment setup, ready, runnin' & gunnin'.  Since i am writing a paper for an upcoming SPIE conference, i'll take SPIE style class as a reference. (http://kmh-lanl.hansonhub.com/spie/)

Assuming you have been working on papers using the followings:
1) Microsoft Word
2) Endnote

At the end of this article, you will be dropping the above two, and will then be using the followings extensively hereafter.
1) Miktex (Think of this as a Compiler/Interpreter)
2) TeXnicCenter (Think of this as an IDE)
3) JabRef (Think of this as a Reference Manager)

Download and Install the followings (All of the followings will be done with a 'default' installation) Note: The version numbers are as of writing.

• Miktex 2.9 (http://miktex.org/2.9/setup)
• JabRef 2.8.1 (http://jabref.sourceforge.net/)
• spie.cls
• spiebib.bst
• ifthen.sty
• cite.sty
• article.tex
• report.bib
• mcr3b.eps

II) Setup Search Path for Miktex
1. Start > All Programs > MikTex 2.9 > Maintenance > Settings > Roots [tab]
2. Add the path, in my case, i added the path to "My Documents"\[Papers]\[Conference_Name]\[Year]\tex\latex\"
3. Go back to General [tab]
4. Click Refresh FNDB

III) Get TeXnicCenter going

When you first load TeXnicCenter, it will ask you for the root path to all your tex-related executables, in my case, i specified "C:\Program Files\miktex\miktex\bin".  It will then fill in the blanks for Yap and the rest.

4) Start writing with the SPIE format

1) Open up article.tex (you can rename this to a more sensible filename)
2) Then, click on Project > Create with active file as main file
3) Press Ctrl F7, and then Press Ctrl F5, you shall see the LaTex with SPIE format
(if you have any errors in the output window, post it up here as comments) You can also try refreshing FNDB, to see if some of the errors are resolved.

IV) EndNote to Bibtex

ENDNOTE first
1. Open up Endnote
2. Click on Edit > Output Styles > select "BibTex Export" or go to Style Manager, and enable "BibTex Export" Click Apply/OK
3. While you are still in Endnote, select all your citations, Click on File > Export  > In the output style selection list, choose BibTex Export
4. Give it a sensible file name (it has to be in .txt, you will need to rename to .bib as you as its done saving)
5. Save it to the folder along with your article.tex in step 3

JabRef Now
1. Open up JabRef
2. Open the .bib file you created and renamed in the previous step
3. It will prompt errors saying none of the citations has BibTex Key
4. You will need to auto-generate, while you are in JabRef, press Ctrl-G, and you will see your BibtexKey columns being filled
5. Save the .bib
V) Completing the Circle

1. Go back to TeXnicCenter
2. Scroll to the bottom where you should see \bibliography{report}
3. Change it to the .bib you saved in the previous step but without .bib (at this step, i suggest you refresh FNDB, again)
4. Press Ctrl F7, and then Press Ctrl F5, you shall see the LaTex with SPIE format (if you have any errors in the output window, post it up here as comments) You can also try refreshing FNDB, to see if some of the errors are resolved.   You might also want to try to give a testing citation or two, just add \cite{ONE_OF_YOUR_BIBTEX_KEY} in any of the paragraphs reasonably.

This should be it !

## Thursday, October 6, 2011

### Matlab: SURF, creating a surface.

I have no problems admitting that i am not a smart person at all.  When it comes to programming/mathematics/image processing/medical imaging analysis, every day, i make sure i tell myself i am a  real novice and there are boundless rooms for me to improve.

Just like one of Matlab's function: SURF/SURFACE.  The function creates a surface based on a matrix or columns(x,y, and/or z).  Reading Matlab's help on surf bewildered me further.   My intention was simple.  I wanted to create a surface, but i didn't have a z function and my z was not anyhow defined by x and y.  If my z is well defined, i might as well have a pretty good model for what i am trying to do.

Anyway, imagine that you just want to create a square plane.  How do you do it with surf ?

After fiddling with this and that, reading this and that, i finally realized what needs to be understood.

Say, i want to create a 2 x 2 plane flattened on z = 2 using coordinates.
As unintelligent as this might look, i could actually go by doing the followings:

> x = [-1  1; -1 1];
> y = [-1 -1;  1 1];
> z = [ 2  2;  2 2];
> surf(x,y,z);

For a smart person like you, you should already recognize the that there are 4 x-y-z points (-1 -1 2), (1 -1 2), (-1 1 2), and (1 1 2). Note that even you know z is 2 across the whole plane. You cannot just input 2. You need a MxN matrix (which happens to be the M and N of X or Y), which makes sense other wise, Matlab won't know how to reconstruct that plane. In the above case, it will be a 2 x 2 matrix. This might seem introductory to you. But it gives me a better understanding of making a surface in matlab.