Shape Context is a method to get an unique descriptor (feature vector) for every point of an object contour or surface. This descriptor is used in combination with a b-spline free form deformation grid, for fully automatic creation of point mappings between surfaces of patient datasets (2D/3D).
The 2D Example will create a corresponding point model (PCM) for a set of 10 2D hand contours.
The 3D Example will create a PCM for a set of 10 3D jaw triangulated surfaces.
There are also examples using the PCM's to train and use 2D/3D Active Shape Models (ASM) and Active Appearance Models (AAM). (folder "ActiveModels_version7")
The 2D example takes a couple of minutes. The 3D-example about 7 hours, and requires 64bit Matlab.
The non-rigid mapping between datasets is kept Diffeomorphic to prevent mesh folding. But the optimizer doesn't succeeded in all cases of the 3D-example (maybe in next update)
- The examples, will compile some c-coded functions into MEX files. In case of failure slower Matlab coded functions will be used.
- Most functions in this zip-archive are also available as standalone files on the File-Exchange, and can be newer/updated.
Please, how i can create my manual landmark ?
I have a CT-scan volume of liver and i want to generate the "land.mat" how i can get my "land.mat" fromy 3D data ? thank you a lot
For anyone looking to use these files, I've had to install a couple of toolboxes to get them working. Here is a list of the toolboxes I've installed.
Image Processing Toolbox
Statistics and Machine Learning Toolbox
System Identification Toolbox
Control System Toolbox
Signal Processing Toolbox
How can I get(define) the final measured by similarity (or sorted by similarity) value.
Hello. I performed image to image registration with your jaw data. But i would like to work with my own scapula data which i have as point cloud and not a volume, in stl or ply format. For the faces and vertices i can get these data and for the two different scales. But i don't have I1 volume available. Do you have a solution ? I'd like to try your algorithm because the scapula is a thin bone just like the jaw.
When running the 2D example of ActiveModels_version7, I get an error message:
Undefined function or variable 'interp'.
Error in LoadDataSetNiceContour (line 21)
Error in ASM_2D_example (line 60)
Could it be that the function "interp" doesn't exist in Matlab 2015?
Instead, I tried to use the results of the asm example of creating the training set, but failed.
I hope you can help me solve this problem. I would like to use this example in my lecture on active shape models.
Please, look for the references in:
hello.can you tell me the original paper you referred to when writing the programs"Shape Context Based Corresponding Point Models".
Trying to run on OSX 10.7.5, but getting the error:
/Applications/MATLAB_R2012a_Student.app/bin/mex: line 305: gcc-4.2: command not found
-> gcc-4.2 -c -I/Applications/MATLAB_R2012a_Student.app/extern/include -I/Applications/MATLAB_R2012a_Student.app/simulink/include -DMATLAB_MEX_FILE -fno-common -no-cpp-precomp -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.5 -fexceptions -DMX_COMPAT_32 -O2 -DNDEBUG "Features2CostMatrix.c"
/Applications/MATLAB_R2012a_Student.app/bin/mex: line 1326: gcc-4.2: command not found
mex: compile of ' "Features2CostMatrix.c"' failed.
Any help is appreciated.
Can't wait to use it!
Thank you for providing the code.
I am trying to use the ShapeContext function. It seems that the demo data "testdata.mat" in the folder "ShapeContext_version2" doesn't contain the correct data.
Knnsearch is part of the "Statistics Toolbox" of Matlab. Maybe you can find a similar but free implementation on the File Exchange
When I run BuildingModels\Example3D the function createns(), knnsearch() and maybe others called by Horn_Align_ICP are missing. Could the deliver be incomplete?
I found MATLAB code for active contours model in 1998 for a long time. Then found it. Really a good job!
Hi! I don't understand how to set landmarks on my 3D dataset. I have to manually fix them on each image?
Thanks in advance and I apologize if the claim proves foolish.
how long should the 2D example take to run?
why I can not download it?
A master piece ...
Many bugs solved. Less memory usage.