跳转到主要内容

图像中Hessian仿射关键点的计算例程。

项目描述

GithubActions Codecov Pypi Downloads ReadTheDocs

Hessian Affine + SIFT关键点在Python中

这是Hessian-Affine检测器的实现。

该实现使用类似于Lowe的(Lowe 1999,Lowe 2004)金字塔来采样高斯尺度空间,并定位在归一化导数上计算的Hessian矩阵行列式的局部极值。然后采用Baumberg-Lindeberg发现局部仿射形状的方法(Lindeberg 1998,Baumberg 2000,Mikolajzyk 2002),计算Hessian极值每个det的仿射形状。最后将局部邻域归一化到固定大小的补丁,并计算SIFT描述符(Lowe 1999,Lowe 2004)。

构建

在pypi上使用cibuildwheel发布了轮子。

实现

实现依赖于OpenCV(2.3.1+)。尽管代码是原创的,但仿射迭代和归一化是从Krystian Mikolajczyk的代码中派生出来的。

SIFT描述符代码在美国专利6,711,293下获得专利,该专利于2019年3月7日到期,因此不再需要许可。

输出

请注意,这种情况不再适用。我们可能会恢复。

构建的二进制文件重写输出文件:<input_image_name>.hesaff.sift

输出格式与“仿射协变特征”页面提供的二进制文件兼容。仿射区域的几何形状由以下公式指定:u,v,a,b,c,即 (x-u)(x-u) + 2b(x-u)(y-v) + c(y-v)(y-v) = 1。图像的左上角位于 (u,v)=(0,0)。仿射区域的几何形状之后跟随 N 个描述符值(N = 128)。

文件格式

N
m
u1 v1 a1 b1 c1 d1(1) d1(2) d1(3) ... d1(N)
      :
      :
um vm am bm cm dm(1) dm(2) dm(3) ... dm(N)

正确使用

如果您使用此代码,请参阅以下文献:

Perdoch, M. and Chum, O. and Matas, J.: 高效表示大规模对象检索的局部几何。在 CVPR09 会议论文中。2009年6月。

待定:将在此处放置描述细节和某些检索结果的技术报告的引用。

注意

需要 opencv。在 ubuntu 上,您可以: sudo apt-get install libopencv-dev。您也可以构建/使用轮子。

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

pyhesaff-2.1.1.tar.gz (108.4 kB 查看哈希值)

上传时间

构建分发

pyhesaff-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.8 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

pyhesaff-2.1.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (8.8 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ i686

pyhesaff-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.8 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

pyhesaff-2.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (8.8 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ i686

pyhesaff-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.8 MB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ x86-64

pyhesaff-2.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (8.8 MB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ i686

pyhesaff-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.8 MB 查看哈希值)

上传时间 CPython 3.8 manylinux: glibc 2.17+ x86-64

pyhesaff-2.1.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (8.8 MB 查看哈希值)

上传时间 CPython 3.8 manylinux: glibc 2.17+ i686

pyhesaff-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.8 MB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ x86-64

pyhesaff-2.1.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (8.8 MB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ i686

由以下组织支持