小编mij*_*ijc的帖子

单个C文件中的FFT

我正在寻找C中的FFT实现.但是,我不是在寻找一个庞大的库(如FFTW),而是为了一个易于使用的单个C文件实现.不幸的是我找不到这样的东西.

有人可以推荐一个简单的实现?

c fft

30
推荐指数
4
解决办法
9万
查看次数

比较数组补丁的最快方法是什么?

我想比较一个二维数组$ A $的不同区域和一个较小尺寸的给定数组$ b $.由于我必须做很多次,因此执行速度非常快是至关重要的.我有一个解决方案,工作正常,但我希望它可以做得更好,更快.

详细地:

假设我们有一个大数组和一个小数组.我遍历大数组中与小数组大小相同的所有可能"补丁",并将这些补丁与给定的小数组进行比较.

def get_best_fit(big_array, small_array):

    # we assume the small array is square
    patch_size = small_array.shape[0]
    min_value = np.inf
    for x in range(patch_size, big_array.shape[0] - patch_size):
        for y in range(patch_size, big_array.shape[1] - patch_size):
            p = get_patch_term(x, y, patch_size, big_array)
            tmp = some_metric(p, small_array)
            if min_value > tmp:
                min_value = tmp
                min_patch = p

    return min_patch, min_value
Run Code Online (Sandbox Code Playgroud)

为了获得补丁,我得到了这个直接阵列访问实现:

def get_patch_term(x, y, patch_size, data):
    """
    a patch has the size (patch_size)^^2
    """
    patch = data[(x - (patch_size-1)/2): …
Run Code Online (Sandbox Code Playgroud)

python arrays performance numpy cython

19
推荐指数
1
解决办法
546
查看次数

为python安装numba

我正在尝试为python 安装numba但是在按照主页的说明后我得到了这个错误,无法找到extension_types页面.

如果有人知道我做错了什么,或者我错过了应该安装的东西,我将非常感激.

非常感谢你提前.

Python 2.7.2+ (default, Jul 20 2012, 22:15:08) 
Type "copyright", "credits" or "license" for more information.

IPython 0.10.2 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object'. ?object also works, ?? prints more.

In [1]: import numba
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)

/home/mijc/Downloads/numba/<ipython console> in <module>()

/home/mijc/Downloads/numba/numba/__init__.py in <module>()
      2 # type inferer

      3 …
Run Code Online (Sandbox Code Playgroud)

python installation numba

15
推荐指数
4
解决办法
2万
查看次数

CMake是否支持Python3?

我无法通过CMake和Swig for Python3为我的C库构建Python包装器模块.一切都适用于Python2.x但看起来CMake找不到Python3.我已经环顾四周,尝试了几件事.

例如,我的python可执行文件链接到Python3,因为我读过CMake会先找到这个版本.

请看这里的SWIG部分CMakeLists.txt:

FIND_PACKAGE(SWIG REQUIRED)
INCLUDE(${SWIG_USE_FILE})

FIND_PACKAGE(PythonInterp 3)
FIND_PACKAGE(PythonLibs 3)

FIND_PATH(PYTHON_INCLUDE_PATH Python.h
  /usr/include
  /usr/local/include)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})

INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

SET(CMAKE_SWIG_FLAGS "")

SET_SOURCE_FILES_PROPERTIES(kissCT3.i PROPERTIES CPLUSPLUS ON)
#SET_SOURCE_FILES_PROPERTIES(kissCT3.i PROPERTIES SWIG_FLAGS "-includeall -py3")

SWIG_ADD_MODULE(kissCT3 python kissCT3.i)
SWIG_LINK_LIBRARIES(kissCT3 libct2d matio kissfft ${PYTHON_LIBRARIES})
Run Code Online (Sandbox Code Playgroud)

不幸的是,调用cmake后的输出显示只找到python2.7:

-- Found SWIG: /usr/bin/swig2.0 (found version "2.0.4")
-- Found PythonInterp: /usr/bin/python2.7 (Required is at least version "3")
-- Found PythonLibs: /usr/lib/libpython2.7.so (Required is at least version "3")
-- Configuring done
-- Generating done
Run Code Online (Sandbox Code Playgroud)

python swig cmake python-3.x

12
推荐指数
3
解决办法
7153
查看次数

标签 统计

python ×3

arrays ×1

c ×1

cmake ×1

cython ×1

fft ×1

installation ×1

numba ×1

numpy ×1

performance ×1

python-3.x ×1

swig ×1