Articles of cython

¿Qué optimizaciones numpy hace cython?

Me sorprendió un poco encontrar que: # fast_ops_c.pyx cimport cython cimport numpy as np @cython.boundscheck(False) # turn off bounds-checking for entire function @cython.wraparound(False) # turn off negative index wrapping for entire function @cython.nonecheck(False) def c_iseq_f1(np.ndarray[np.double_t, ndim=1, cast=False] x, double val): # Test (x==val) except gives NaN where x is NaN cdef np.ndarray[np.double_t, ndim=1] result = […]

Propagando excepciones a través de dlsym cython

No puedo propagar excepciones a través de dlsym. Utilizo dlsym para cargar un archivo de Python cythonized. Hice un ejemplo de trabajo mínimo a continuación para que pueda probarlo usted mismo: Tengo un archivo pyx, c_fun.pyx, que compilo en un archivo C usando Cython. Luego estoy usando dlsym para cargar el archivo so en otro […]

comstackndo Cython con MinGW – referencia no definida PyExc

Estoy intentando comstackr un fragmento de código simple del libro “Cython – Una guía para progtwigdores de Python“, y cuando compilo, aparece el siguiente error: H:\Cython>python setup.py build_ext -i –compiler=mingw32 running build_ext building ‘fib’ extension C:\MinGW\bin\gcc.exe -mdll -O -Wall -IC:\Anaconda3\include -IC:\Anaconda3\include -c fib.c -o build\temp.win32-3.4\Release\fib.o writing build\temp.win32-3.4\Release\fib.def C:\MinGW\bin\gcc.exe -shared -s build\temp.win32-3.4\Release\fib.o build\temp.win32-3.4\Release\fib.def -LC:\Anaconda3\libs -LC:\Ana conda3\PCbuild […]

Definición de estructura con vista de memoria escrita como miembro

Actualmente estoy tratando de obtener una estructura con una vista de memoria escrita para que funcione. P.ej ctypedef struct node: unsigned int[:] inds Si inds no es una vista de memoria, funciona perfectamente hasta donde puedo ver. Sin embargo, con una vista de memoria y usando algo como def testFunction(): cdef node testNode testNode.inds = […]

Error de comstackción de Cython setup.py en el tutorial de ajuste de DLL: símbolo externo sin resolver

Historia de fondo: para uno de mis proyectos que requiere cálculos pesados, actualmente estoy llamando desde mi código Python a un archivo .exe que viene de un código C ++, que lee / escribe archivos en el disco, y por lo tanto es muy lento. Para resolver este problema, recodifiqué el código C ++ para […]

Cython no puede encontrar el archivo de objeto compartido

Estoy intentando enlazar con mi propia biblioteca de C de Cython, siguiendo las instrucciones que he encontrado en la web, incluida esta respuesta: Uso de Cython para vincular Python a una biblioteca compartida Estoy ejecutando IPython a través de Spyder. Mi setup.py se ve así: from distutils.core import setup from distutils.extension import Extension from Cython.Build […]

Devolviendo una matriz de estructuras en Cython

Estoy tratando de devolver una serie de estructuras en Cython. // .pyx from libc.stdint cimport uint8_t cdef extern from “”: cdef struct apriltag_detection: int id double c[2] double p[4][2] ctypedef apriltag_detection apriltag_detection_t cdef extern from “tag36h11_detector/tag36h11_detector.h”: apriltag_detection_t* scan_frame(int width, int height, uint8_t* data); cdef class Detection: # how do I “link” this to the struct […]

Declarar punteros FILE en Cython

¿Cómo declaramos los punteros de archivo en Cython? Si uso lo siguiente: cdef FILE* f Muestra el error “ARCHIVO no es un identificador de tipo”. Por favor, sugiera cualquier cambio.

Variable de alto rendimiento desenfoque en imágenes muy grandes con Python

Tengo una gran colección de imágenes grandes (por ejemplo, 15000×15000 píxeles) que me gustaría difuminar. Necesito difuminar las imágenes usando una función de distancia, por lo que cuanto más lejos me aleje de algunas áreas de la imagen, más me debería hacer más borrosa. Tengo un mapa de distancia que describe qué tan lejos está […]

Cuando decapado una clase tengo un comportamiento diferente en python que en cython

Tengo la siguiente jerarquía de archivos: python/apps/A.py /geometrylib/__init__.py /geometrylib/B.py /geometrylib/geometry.py /geometrylib/goemetry.pyx /geometrylib/goemetry.pyd geometry.pyx y geometry.py contienen la misma clase Camera (la versión de cython define la clase con cdef). Tanto A.py como B.py importan el módulo de geometría. Si importo la versión de cython (comstackda en geometry.pyd), puedo descifrar correctamente la cámara desde B.py en […]