# SIFT3D
Copyright (c) 2015-2017 Blaine Rister et al., see LICENSE for details.
SIFT3D is an analogue of the scale-invariant feature transform (SIFT) for three-dimensional images. It leverages volumetric data and real-world units to detect keypoints and extract a robust description of their content. It can also perform 3D image registration by matching SIFT3D features and fitting geometric transformations with the RANSAC algorithm. All of this is implemented in a cross-platform C library, with wrappers for Matlab.
SIFT3D includes imutil, a utility library for image processing and linear algebra. This library performs file IO in a variety of medical imaging formats, including DICOM and NIFTI.
## Contents
This code creates the following executables:
- kpSift3D - Extract keypoints and descriptors from a single image.
- regSift3D - Extract matches and a geometric transformation from two images.
and the following libraries:
- libreg.so - Image registration from SIFT3D features
- libsift3d.so - Extract and match SIFT3D features
- libimutil.so - Utility library for image processing, regression and linear algebra. Includes IO functions for DICOM and NIFTI file formats.
It also contains a Matlab toolbox for calling the library functions from Matlab scripts. See the README in /wrappers/matlab for more information.
## Installation instructions
See doc/INSTALL_\<PLATFORM\>.md for instructions on installing SIFT3D for your specific platform.
## Usage instructions
For instructions on using the CLI, use the "--help" option, e.g.
kpSift3D --help
See /examples for sample programs using the C and Matlab APIs.
The following sections describe how to link a program to the SIFT3D libraries.
### Linking to SIFT3D libraries with CMake
SIFT3D exports a CMake package to the install directories. Here is an example of compiling a C program with SIFT3D from a CMake list.
find_package (SIFT3D) # Find SIFT3D
add_executable (helloWorld helloWorld.c) # Declare a target
target_link_libraries (helloWorld PUBLIC ${SIFT3D_LIBRARIES}) # Link to the SIFT3D libraries
if (WIN32) # Find the SIFT3D headers
target_include_directories (helloWorld PUBLIC "${SIFT3D_DIR}/../${SIFT3D_INCLUDE_DIRS}")
else()
target_include_directories (helloWorld PUBLIC ${SIFT3D_INCLUDE_DIRS})
endif()
### Linking to SIFT3D libraries without CMake
The header files and libraries are installed to "sift3d" subdirectories in your installation tree. On most systems, you will need to add these subdirectories to your include and linker search paths. You will also need to link to the dependencies listed below.
- libimutil - requires linking to LAPACK, BLAS, and zlib. Linking to DCMTK and nifticlib are optional.
- libsift3d - requires linking to imutil
- libreg - requires linking to sift3d and imutil
Information about the dependencies can be found in the installation instructions.
*Note: On Windows systems, some of the dependencies are statically linked to the SIFT3D libraries. In this case, it suffices to link to the DLLs in the "bin" subdirectory of your installation.*
## Contact
Please contact me at blaine@stanford.edu if you have any questions or concerns.
If you would like to cite this work, please refer to the following paper:
B. Rister, M. A. Horowitz and D. L. Rubin, "Volumetric Image Registration From Invariant Keypoints," in *IEEE Transactions on Image Processing*, vol. 26, no. 10, pp. 4900-4910, Oct. 2017.
doi: 10.1109/TIP.2017.2722689
The paper and automatic citations are available [here](http://ieeexplore.ieee.org/document/7967757/citations).
没有合适的资源?快使用搜索试试~ 我知道了~
SIFT3D-master.zip_3d sift_SIFT3D算法_sift 3D_sift3d_特征描述
共70个文件
c:17个
m:15个
txt:9个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 146 浏览量
2022-07-15
19:17:34
上传
评论
收藏 25.55MB ZIP 举报
温馨提示
经典sift3d算法,有c++和matlab两个版本。
资源详情
资源评论
资源推荐
收起资源包目录
SIFT3D-master.zip (70个子文件)
SIFT3D-master
cmake
FindOpenMP.cmake 12KB
FindDCMTK.cmake 11KB
FindMingw.cmake 2KB
FindMatlab.cmake 46KB
SIFT3DPackage.cmake 4KB
FindNIFTI.cmake 2KB
SIFT3DConfig.cmake.in 722B
reg
reg.h 2KB
reg.c 14KB
CMakeLists.txt 2KB
SIFT3DConfigVersion.cmake.in 768B
LICENSE 1KB
CHANGES.md 3KB
sift3d
sift.h 4KB
CMakeLists.txt 2KB
sift.c 103KB
doc
INSTALL_MAC.md 2KB
INSTALL_LINUX.md 2KB
INSTALL_WINDOWS.md 6KB
examples
registerMatlab.m 390B
featuresC.c 3KB
ioMatlab.m 266B
data
1.nii.gz 11.05MB
2.nii.gz 14.41MB
featuresMatlab.m 382B
registerC.c 3KB
CMakeLists.txt 1KB
manualFeaturesMatlab.m 498B
ioC.c 1KB
.gitignore 424B
CMakeLists.txt 8KB
README.md 4KB
imutil
nifti.h 610B
kernels.cl 975B
imtypes.h 10KB
imutil.h 8KB
templates
sep_fir_3d.template 1KB
CMakeLists.txt 430B
immacros.h 13KB
dicom.cpp 48KB
dicom.h 1KB
CMakeLists.txt 10KB
imutil.c 135KB
nifti.c 5KB
wrappers
matlab
setupSift3D.m 689B
extractSift3D.m 3KB
mexImWrite3D.c 3KB
mexDetectSift3D.c 2KB
Sift3DTest.m 27KB
mexutil.h 3KB
mexOrientation3D.c 3KB
mexRegisterSift3D.c 5KB
registerSift3D.m 4KB
detectSift3D.m 2KB
mexutil.c 25KB
mexExtractSift3D.c 4KB
orientation3D.m 2KB
imRead3D.m 2KB
imWrite3D.m 2KB
CMakeLists.txt 3KB
Sift3DParser.m 3KB
mexImRead3D.c 3KB
README.md 3KB
checkUnits3D.m 876B
keypoint3D.m 3KB
CMakeLists.txt 476B
cli
kpSift3D.c 7KB
CMakeLists.txt 880B
regSift3D.c 17KB
denseSift3D.c 5KB
共 70 条
- 1
局外狗
- 粉丝: 64
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1