I’m currently a Master’s student at Institute of Software, Chinese Academy of Sciences.
My recent research interest lie in the fields of:
- Computer Vision
- Multimodality
- Large Language Models
Obsidian, Zotero, Things, Notion, ...
A video reader for extracting motion vectors and residuals from encoded H.264 videos.
License: MIT License
I’m currently a Master’s student at Institute of Software, Chinese Academy of Sciences.
My recent research interest lie in the fields of:
Obsidian, Zotero, Things, Notion, ...
Thanks for putting this nice code together :) I am trying to read out motion vectors and residual images from mp4 as well.
Following your code I can get the motion vectors just fine, but the residual images end up being just the decoded images from the video. This is useful as well to me but I really would like the residual images.
Is there any trick to get those (you show them in your paper?). Do I need the ffmpeg patches to get them?
Dear sir, I have solved the problem occured before using command 'conda install -c conda-forge ffmpeg'; But I met a new problem: when I was running training procedure by "python3 mm_video/run_net.py --cfg configs/compressed_video/msrvtt_captioning.yaml" , I got error "ImportError: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by /home/qysu/anaconda3/envs/cocap/lib/python3.9/site-packages/cv_reader/api.cpython-39-x86_64-linux-gnu.so)", what can I do to solve it? Thanks.
Hello!
Here is a compiled wheel package: Google Drive This was built by runningpython3 setup.py bdist_wheel
under the root folder of this project after preparing the ffmpeg. You can compile it yourself if your environment does not match mine.
To install it, runpip3 install cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl
.Hello! Thanks for your reply, I have installed the package in the requriement.txt and then installed cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl by
pip3 install cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl
. Unfortunately, when I tap "cv_reader", I got the error in the picture 1 below : "ImportError: libbz2.so.1.0: cannot open shared object file: No such file or directory"; Second, when I was running code: "python3 tools/video_convert.py --codec=libx264 --keyint=60 --resize=240 -i dataset/msrvtt/videos -o dataset/msrvtt/videos_h264_keyint_60" according to the Cocap/dataset/README.md, I got the error: FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/ffmpeg', Any other problem with my environment? How to fix them? Thanks, sir.![]()
Originally posted by @Suqingyong in #2 (comment)
您好,我想请问在之前已经安装过ffmpeg的前提下,Compressed-Video-Reader/ffmpeg/install_ffmpeg.sh中的
sudo apt -y install
libass-dev
libfreetype6-dev
libsdl2-dev
libtool
libva-dev
libvdpau-dev
libvorbis-dev
libxcb1-dev
libxcb-shm0-dev
libxcb-xfixes0-dev
texinfo
zlib1g-dev
nasm
yasm
libx264-dev
libx265-dev
libnuma-dev
libvpx-dev
libmp3lame-dev
libopus-dev
可以注释掉吗?毕竟这个命令需要root权限
Could anyone help me to solve this issue? Many thanks.
Building wheels for collected packages: cv-reader
Building wheel for cv-reader (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for cv-reader (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [277 lines of output]
running bdist_wheel
running build
running build_py
copying src/cv_reader/__init__.py -> build/lib.linux-x86_64-cpython-312/cv_reader
copying src/cv_reader/__main__.py -> build/lib.linux-x86_64-cpython-312/cv_reader
copying src/cv_reader/reader.py -> build/lib.linux-x86_64-cpython-312/cv_reader
running build_ext
building 'cv_reader.api' extension
gcc -pthread -B /home/hanwen/miniconda3/envs/cvreader/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/hanwen/miniconda3/envs/cvreader/include -fPIC -O2 -isystem /home/hanwen/miniconda3/envs/cvreader/include -fPIC -I/home/hanwen/Compressed-Video-Reader/ffmpeg/ffmpeg_install/include -I/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include -I/home/hanwen/miniconda3/envs/cvreader/include/python3.12 -c src/cv_reader/api.cpp -o build/temp.linux-x86_64-cpython-312/src/cv_reader/api.o -std=c++11
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1909,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
17 | #warning "Using deprecated NumPy API, disable it with " \
| ^~~~~~~
src/cv_reader/api.cpp: In function ‘int decode_h264_packet(AVPacket*, AVCodecContext*, AVFrame*, int*, PyObject*, bool)’:
src/cv_reader/api.cpp:82:31: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
82 | for (i = 0; i < sd->size / sizeof(*mvs); i++) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
92 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note: initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
1514 | PyArray_BYTES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
92 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
146 | (i)*PyArray_STRIDES(obj)[0] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
92 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
147 | (j)*PyArray_STRIDES(obj)[1] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
92 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
148 | (k)*PyArray_STRIDES(obj)[2]))
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
93 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note: initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
1514 | PyArray_BYTES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
93 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
146 | (i)*PyArray_STRIDES(obj)[0] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
93 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
147 | (j)*PyArray_STRIDES(obj)[1] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
93 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
148 | (k)*PyArray_STRIDES(obj)[2]))
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
95 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note: initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
1514 | PyArray_BYTES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
95 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
146 | (i)*PyArray_STRIDES(obj)[0] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
95 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
147 | (j)*PyArray_STRIDES(obj)[1] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
95 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
148 | (k)*PyArray_STRIDES(obj)[2]))
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
96 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note: initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
1514 | PyArray_BYTES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
96 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
146 | (i)*PyArray_STRIDES(obj)[0] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
96 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
147 | (j)*PyArray_STRIDES(obj)[1] + \
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
96 | *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
| ^~~~~~
| |
| _object*
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
148 | (k)*PyArray_STRIDES(obj)[2]))
| ^~~
In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
from src/cv_reader/api.cpp:14:
/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note: initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
1526 | PyArray_STRIDES(const PyArrayObject *arr)
| ~~~~~~~~~~~~~~~~~~~~~^~~
error: command '/usr/bin/gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for cv-reader
Failed to build cv-reader
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (cv-reader)
Dear sir, I have trouble installing cv_reader, for the sake of I have not the sudo permission and my linux server cannot connect to the external network. So is there a suitable docker image or some other way to do this (cv_reader) ? Thank you, sir!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.