【边缘设备】RK3588 用 opencv 的 videocapture 一直无法读取视频

这篇具有很好参考价值的文章主要介绍了【边缘设备】RK3588 用 opencv 的 videocapture 一直无法读取视频。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

RK3588 平台一直无法读取视频

问题描述:
我这边用的是 rk3588 的核心板,刷的固件里面有 opencv 4.5.5, 系统是 ubuntu 20.04 LTS 版本, 使用 cv::VideoCapture 无法读取 mp4 或其他视频,每次读取后 isOpened() 都是 false;
硬件是 rk3588 对应的开发板
以下编译安装直接在开发板上进行,不是在宿主机用交叉编译链编译安装的。

opencv 安装

下载 opencv4.5.5.zip, 解压后,在源代码目录新建 build 目录,进入 build 目录;

确保安装了相关依赖
确保安装了相关依赖
确保安装了相关依赖

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libatlas-base-dev gfortran 
sudo apt-get install -f ffmpeg   # show video

如果 libjasper 安装失败,请往下翻

cd opencv4.5.5
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=~/install/opencv4.5.5 -DBUILD_IPP_IW=OFF -DBUILD_WITH_DYNAMIC_IPP=OFF -DBUILD_JPEG=ON -DBUILD_PNG=ON -DBUILD_TIFF=ON -DBUILD_ZLIB=ON -DBUILD_SHARED_LIBS=ON -DBUILD_opencv_java_bindings_generator=OFF -DBUILD_opencv_python_bindings_generator=OFF -DWITH_MATLAB=OFF -DWITH_LAPACK=OFF -DWITH_FFMPEG=ON     -DWITH_TBB=ON -DWITH_V4L=ON -DWITH_GTK=ON -DWITH_OPENGL=ON -DWITH_IPP=OFF ..
make -j$(nproc)
make install

或者新建一个一键编译安装的脚本

build_ubuntu2004_arm64_opencv4.5.5.sh

#!/usr/bin/bash

# ###############################################
# # 确保安装了相关依赖
# sudo apt-get update
# sudo apt-get upgrade
# sudo apt-get install build-essential
# sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
# sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
# sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
# sudo apt-get install libxvidcore-dev libx264-dev
# sudo apt-get install libatlas-base-dev gfortran 
# sudo apt-get install -f ffmpeg   # show video
# ###################################################

# opencv4.5.5
SRC_NAME_VER=opencv4.5.5

# 压缩包
SRC_ZIP=~/depends/${SRC_NAME_VER}.zip

# 源码和编译目录
SRC_DIR=~/depends/${SRC_NAME_VER}
BUILD_DIR=${SRC_DIR}/build

# 安装目录
INSTALL_ROOT=~/install
INSTALL_DIR=${INSTALL_ROOT}/${SRC_NAME_VER}


# 清空源码目录、编译目录以及对应的安装目录
rm -rf ${BUILD_DIR}
rm -rf ${SRC_DIR}
rm -rf ${INSTALL_DIR}

# 新建源码目录,编译目录和安装目录
mkdir -p ${SRC_DIR}
mkdir -p ${BUILD_DIR}
mkdir -p ${INSTALL_DIR}

# 解压安装包
unzip -d $SRC_DIR $SRC_ZIP

# 进入对应目录进行编译
pushd ${BUILD_DIR}

cmake -DCMAKE_BUILD_TYPE=RELEASE \
	-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} \
	-DBUILD_IPP_IW=OFF \
	-DBUILD_WITH_DYNAMIC_IPP=OFF \
	-DBUILD_JPEG=ON \
	-DBUILD_PNG=ON \
	-DBUILD_TIFF=ON \
	-DBUILD_ZLIB=ON \
	-DBUILD_SHARED_LIBS=ON \
	-DBUILD_JAVA=OFF \
	-DBUILD_opencv_java_bindings_generator=OFF \
	-DBUILD_opencv_python_bindings_generator=OFF \
	-DBUILD_opencv_python3=OFF \
	-DBUILD_opencv_python_tests=OFF \
	-DWITH_MATLAB=OFF \
	-DWITH_LAPACK=OFF \
	-DWITH_FFMPEG=ON \
	-DFFMPEG_DIR=/usr/local/ffmpeg \
	-DWITH_GSTREAMER=ON \
	-DWITH_TBB=ON \
	-DWITH_V4L=ON \
	-DWITH_GTK=ON \
	-DWITH_OPENCL=ON \
	-DWITH_OPENGL=ON \
	-DWITH_IPP=OFF ..

make -j$(nproc)
make install
popd

安装 libjasper 或许确认这个就可以了

大意了,一开始安装的时候,没有太在意这个库,所以一直重新编都没有管这个库
所以在安装 opencv 的时候一定要按照步骤来,否则要找很久的问题。
如果上述 opencv 重新编译安装还是出现无法读取视频的问题,请确保每个依赖库都已经成功安装
我相信很多人还是无法读取视频,那么就确认这个库吧。

sudo apt install libjasper1 libjasper-dev

执行上述命令会报错。那怎么办呢?修改 /etc/apt/source.list

sudo cp /etc/apt/source.list /etc/apt/source.list.bak
sudo gedit /etc/apt/source.list
deb http://mirrors.aliyun.com/ubuntu-ports/ focal main restricted
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-updates main restricted
deb http://mirrors.aliyun.com/ubuntu-ports/ focal universe
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-updates universe
deb http://mirrors.aliyun.com/ubuntu-ports/ focal multiverse
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-updates multiverse
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-security main restricted
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-security universe
deb http://mirrors.aliyun.com/ubuntu-ports/ focal-security multiverse
# 新增
deb http://ports.ubuntu.com/ubuntu-ports xenial-security main  

sudo apt update
sudo apt upgrade
sudo apt install libjasper1 libjasper-dev

NOTE: 以下过程是试错过程,不一定是必要过程,如果上述过程能解决问题,下面就不用管了。

ffmpeg 重新安装

这里为什么要重新安装 ffmpeg ? 翻阅了很多博客,说要重新安装 ffmpeg.

但是这里也不一定需要重新安装,重新安装肯定没问题。ffmpeg 版本不要安装太高,因为接口变换较大,可能 opencv 4.5.5 不兼容,我这里试过好几个版本( ffmpeg 6.0, ffmpeg 5.0.3, ffmpeg 4.4.4),在重新编译opencv时都编译失败。 ffmpeg 4.2.9 可以成功。

Download FFmpeg
ffmpeg-4.2.9

./configure --enable-shared --prefix=/usr/local/ffmpeg
make -j4
sudo make install
INSTALL	libavdevice/libavdevice.a
INSTALL	libavdevice/libavdevice.so
STRIP	install-libavdevice-shared
INSTALL	libavfilter/libavfilter.a
INSTALL	libavfilter/libavfilter.so
STRIP	install-libavfilter-shared
INSTALL	libavformat/libavformat.a
INSTALL	libavformat/libavformat.so
STRIP	install-libavformat-shared
INSTALL	libavcodec/libavcodec.a
INSTALL	libavcodec/libavcodec.so
STRIP	install-libavcodec-shared
INSTALL	libswresample/libswresample.a
INSTALL	libswresample/libswresample.so
STRIP	install-libswresample-shared
INSTALL	libswscale/libswscale.a
INSTALL	libswscale/libswscale.so
STRIP	install-libswscale-shared
INSTALL	libavutil/libavutil.a
INSTALL	libavutil/libavutil.so
STRIP	install-libavutil-shared
INSTALL	doc/ffmpeg.1
INSTALL	doc/ffplay.1
INSTALL	doc/ffprobe.1
INSTALL	doc/ffmpeg-all.1
INSTALL	doc/ffplay-all.1
INSTALL	doc/ffprobe-all.1
INSTALL	doc/ffmpeg-utils.1
INSTALL	doc/ffmpeg-scaler.1
INSTALL	doc/ffmpeg-resampler.1
INSTALL	doc/ffmpeg-codecs.1
INSTALL	doc/ffmpeg-bitstream-filters.1
INSTALL	doc/ffmpeg-formats.1
INSTALL	doc/ffmpeg-protocols.1
INSTALL	doc/ffmpeg-devices.1
INSTALL	doc/ffmpeg-filters.1
INSTALL	doc/libavutil.3
INSTALL	doc/libswscale.3
INSTALL	doc/libswresample.3
INSTALL	doc/libavcodec.3
INSTALL	doc/libavformat.3
INSTALL	doc/libavdevice.3
INSTALL	doc/libavfilter.3
INSTALL	doc/ffmpeg.1
INSTALL	doc/ffplay.1
INSTALL	doc/ffprobe.1
INSTALL	doc/ffmpeg-all.1
INSTALL	doc/ffplay-all.1
INSTALL	doc/ffprobe-all.1
INSTALL	doc/ffmpeg-utils.1
INSTALL	doc/ffmpeg-scaler.1
INSTALL	doc/ffmpeg-resampler.1
INSTALL	doc/ffmpeg-codecs.1
INSTALL	doc/ffmpeg-bitstream-filters.1
INSTALL	doc/ffmpeg-formats.1
INSTALL	doc/ffmpeg-protocols.1
INSTALL	doc/ffmpeg-devices.1
INSTALL	doc/ffmpeg-filters.1
INSTALL	doc/libavutil.3
INSTALL	doc/libswscale.3
INSTALL	doc/libswresample.3
INSTALL	doc/libavcodec.3
INSTALL	doc/libavformat.3
INSTALL	doc/libavdevice.3
INSTALL	doc/libavfilter.3
INSTALL	install-progs-yes
INSTALL	ffmpeg
INSTALL	ffplay
INSTALL	ffprobe
INSTALL	presets/libvpx-1080p50_60.ffpreset
INSTALL	presets/libvpx-360p.ffpreset
INSTALL	presets/libvpx-1080p.ffpreset
INSTALL	presets/libvpx-720p50_60.ffpreset
INSTALL	presets/libvpx-720p.ffpreset
INSTALL	doc/ffprobe.xsd
INSTALL	doc/examples/transcoding.c
INSTALL	doc/examples/vaapi_transcode.c
INSTALL	doc/examples/demuxing_decoding.c
INSTALL	doc/examples/filtering_video.c
INSTALL	doc/examples/muxing.c
INSTALL	doc/examples/avio_dir_cmd.c
INSTALL	doc/examples/extract_mvs.c
INSTALL	doc/examples/encode_audio.c
INSTALL	doc/examples/hw_decode.c
INSTALL	doc/examples/filter_audio.c
INSTALL	doc/examples/resampling_audio.c
INSTALL	doc/examples/decode_video.c
INSTALL	doc/examples/metadata.c
INSTALL	doc/examples/remuxing.c
INSTALL	doc/examples/filtering_audio.c
INSTALL	doc/examples/http_multiclient.c
INSTALL	doc/examples/avio_reading.c
INSTALL	doc/examples/qsvdec.c
INSTALL	doc/examples/vaapi_encode.c
INSTALL	doc/examples/decode_audio.c
INSTALL	doc/examples/transcode_aac.c
INSTALL	doc/examples/encode_video.c
INSTALL	doc/examples/scaling_video.c
INSTALL	doc/examples/README
INSTALL	doc/examples/Makefile
INSTALL	doc/examples/transcoding.c
INSTALL	doc/examples/vaapi_transcode.c
INSTALL	doc/examples/demuxing_decoding.c
INSTALL	doc/examples/filtering_video.c
INSTALL	doc/examples/muxing.c
INSTALL	doc/examples/avio_dir_cmd.c
INSTALL	doc/examples/extract_mvs.c
INSTALL	doc/examples/encode_audio.c
INSTALL	doc/examples/hw_decode.c
INSTALL	doc/examples/filter_audio.c
INSTALL	doc/examples/resampling_audio.c
INSTALL	doc/examples/decode_video.c
INSTALL	doc/examples/metadata.c
INSTALL	doc/examples/remuxing.c
INSTALL	doc/examples/filtering_audio.c
INSTALL	doc/examples/http_multiclient.c
INSTALL	doc/examples/avio_reading.c
INSTALL	doc/examples/qsvdec.c
INSTALL	doc/examples/vaapi_encode.c
INSTALL	doc/examples/decode_audio.c
INSTALL	doc/examples/transcode_aac.c
INSTALL	doc/examples/encode_video.c
INSTALL	doc/examples/scaling_video.c
INSTALL	doc/examples/README
INSTALL	doc/examples/Makefile
INSTALL	libavdevice/avdevice.h
INSTALL	libavdevice/version.h
INSTALL	libavdevice/libavdevice.pc
INSTALL	libavfilter/avfilter.h
INSTALL	libavfilter/buffersink.h
INSTALL	libavfilter/buffersrc.h
INSTALL	libavfilter/version.h
INSTALL	libavfilter/libavfilter.pc
INSTALL	libavformat/avformat.h
INSTALL	libavformat/avio.h
INSTALL	libavformat/version.h
INSTALL	libavformat/libavformat.pc
INSTALL	libavcodec/ac3_parser.h
INSTALL	libavcodec/adts_parser.h
INSTALL	libavcodec/avcodec.h
INSTALL	libavcodec/avdct.h
INSTALL	libavcodec/avfft.h
INSTALL	libavcodec/d3d11va.h
INSTALL	libavcodec/dirac.h
INSTALL	libavcodec/dv_profile.h
INSTALL	libavcodec/dxva2.h
INSTALL	libavcodec/jni.h
INSTALL	libavcodec/mediacodec.h
INSTALL	libavcodec/qsv.h
INSTALL	libavcodec/vaapi.h
INSTALL	libavcodec/vdpau.h
INSTALL	libavcodec/version.h
INSTALL	libavcodec/videotoolbox.h
INSTALL	libavcodec/vorbis_parser.h
INSTALL	libavcodec/xvmc.h
INSTALL	libavcodec/libavcodec.pc
INSTALL	libswresample/swresample.h
INSTALL	libswresample/version.h
INSTALL	libswresample/libswresample.pc
INSTALL	libswscale/swscale.h
INSTALL	libswscale/version.h
INSTALL	libswscale/libswscale.pc
INSTALL	libavutil/adler32.h
INSTALL	libavutil/aes.h
INSTALL	libavutil/aes_ctr.h
INSTALL	libavutil/attributes.h
INSTALL	libavutil/audio_fifo.h
INSTALL	libavutil/avassert.h
INSTALL	libavutil/avstring.h
INSTALL	libavutil/avutil.h
INSTALL	libavutil/base64.h
INSTALL	libavutil/blowfish.h
INSTALL	libavutil/bprint.h
INSTALL	libavutil/bswap.h
INSTALL	libavutil/buffer.h
INSTALL	libavutil/cast5.h
INSTALL	libavutil/camellia.h
INSTALL	libavutil/channel_layout.h
INSTALL	libavutil/common.h
INSTALL	libavutil/cpu.h
INSTALL	libavutil/crc.h
INSTALL	libavutil/des.h
INSTALL	libavutil/dict.h
INSTALL	libavutil/display.h
INSTALL	libavutil/downmix_info.h
INSTALL	libavutil/encryption_info.h
INSTALL	libavutil/error.h
INSTALL	libavutil/eval.h
INSTALL	libavutil/fifo.h
INSTALL	libavutil/file.h
INSTALL	libavutil/frame.h
INSTALL	libavutil/hash.h
INSTALL	libavutil/hdr_dynamic_metadata.h
INSTALL	libavutil/hmac.h
INSTALL	libavutil/hwcontext.h
INSTALL	libavutil/hwcontext_cuda.h
INSTALL	libavutil/hwcontext_d3d11va.h
INSTALL	libavutil/hwcontext_drm.h
INSTALL	libavutil/hwcontext_dxva2.h
INSTALL	libavutil/hwcontext_qsv.h
INSTALL	libavutil/hwcontext_mediacodec.h
INSTALL	libavutil/hwcontext_vaapi.h
INSTALL	libavutil/hwcontext_videotoolbox.h
INSTALL	libavutil/hwcontext_vdpau.h
INSTALL	libavutil/imgutils.h
INSTALL	libavutil/intfloat.h
INSTALL	libavutil/intreadwrite.h
INSTALL	libavutil/lfg.h
INSTALL	libavutil/log.h
INSTALL	libavutil/macros.h
INSTALL	libavutil/mathematics.h
INSTALL	libavutil/mastering_display_metadata.h
INSTALL	libavutil/md5.h
INSTALL	libavutil/mem.h
INSTALL	libavutil/motion_vector.h
INSTALL	libavutil/murmur3.h
INSTALL	libavutil/opt.h
INSTALL	libavutil/parseutils.h
INSTALL	libavutil/pixdesc.h
INSTALL	libavutil/pixelutils.h
INSTALL	libavutil/pixfmt.h
INSTALL	libavutil/random_seed.h
INSTALL	libavutil/rc4.h
INSTALL	libavutil/rational.h
INSTALL	libavutil/replaygain.h
INSTALL	libavutil/ripemd.h
INSTALL	libavutil/samplefmt.h
INSTALL	libavutil/sha.h
INSTALL	libavutil/sha512.h
INSTALL	libavutil/spherical.h
INSTALL	libavutil/stereo3d.h
INSTALL	libavutil/threadmessage.h
INSTALL	libavutil/time.h
INSTALL	libavutil/timecode.h
INSTALL	libavutil/timestamp.h
INSTALL	libavutil/tree.h
INSTALL	libavutil/twofish.h
INSTALL	libavutil/version.h
INSTALL	libavutil/xtea.h
INSTALL	libavutil/tea.h
INSTALL	libavutil/tx.h
INSTALL	libavutil/lzo.h
INSTALL	libavutil/avconfig.h
INSTALL	libavutil/ffversion.h
INSTALL	libavutil/libavutil.pc

编译安装完成后,在 /usr/local/ffmpeg 下新建 ffmpeg-config.cmake, 文件内容如下:

ffmpeg-config.cmake

set(ffmpeg_path "${CMAKE_CURRENT_LIST_DIR}")

message("ffmpeg_path: ${ffmpeg_path}")

set(FFMPEG_EXEC_DIR "${ffmpeg_path}/bin")
set(FFMPEG_LIBDIR "${ffmpeg_path}/lib")
set(FFMPEG_INCLUDE_DIRS "${ffmpeg_path}/include")

# library names
set(FFMPEG_LIBRARIES
    ${FFMPEG_LIBDIR}/libavformat.so
    ${FFMPEG_LIBDIR}/libavdevice.so
    ${FFMPEG_LIBDIR}/libavcodec.so
    ${FFMPEG_LIBDIR}/libavutil.so
    ${FFMPEG_LIBDIR}/libswscale.so
    ${FFMPEG_LIBDIR}/libswresample.so
    ${FFMPEG_LIBDIR}/libavfilter.so
)

# found status
set(FFMPEG_libavformat_FOUND TRUE)
set(FFMPEG_libavdevice_FOUND TRUE)
set(FFMPEG_libavcodec_FOUND TRUE)
set(FFMPEG_libavutil_FOUND TRUE)
set(FFMPEG_libswscale_FOUND TRUE)
set(FFMPEG_libswresample_FOUND TRUE)
set(FFMPEG_libavfilter_FOUND TRUE)

# library versions, 注意这几个变量,一定要设置为全局CACHE变量
set(FFMPEG_libavutil_VERSION 56.31.100 CACHE INTERNAL "FFMPEG_libavutil_VERSION") # info
set(FFMPEG_libavcodec_VERSION 58.54.100 CACHE INTERNAL "FFMPEG_libavcodec_VERSION") # info
set(FFMPEG_libavformat_VERSION 58.29.100 CACHE INTERNAL "FFMPEG_libavformat_VERSION") # info
set(FFMPEG_libavdevice_VERSION 58.8.100 CACHE INTERNAL "FFMPEG_libavdevice_VERSION") # info
set(FFMPEG_libavfilter_VERSION 7.57.100 CACHE INTERNAL "FFMPEG_libavfilter_VERSION") # info
set(FFMPEG_libswscale_VERSION 5.5.100 CACHE INTERNAL "FFMPEG_libswscale_VERSION") # info
set(FFMPEG_libswresample_VERSION 3.5.100 CACHE INTERNAL "FFMPEG_libswresample_VERSION") # info

set(FFMPEG_FOUND TRUE)
set(FFMPEG_LIBS ${FFMPEG_LIBRARIES})

status("    #################################### FFMPEG:"       FFMPEG_FOUND         THEN "YES (find_package)"                       ELSE "NO (find_package)")
status("      avcodec:"      FFMPEG_libavcodec_VERSION    THEN "YES (${FFMPEG_libavcodec_VERSION})"    ELSE NO)
status("      avformat:"     FFMPEG_libavformat_VERSION   THEN "YES (${FFMPEG_libavformat_VERSION})"   ELSE NO)
status("      avutil:"       FFMPEG_libavutil_VERSION     THEN "YES (${FFMPEG_libavutil_VERSION})"     ELSE NO)
status("      swscale:"      FFMPEG_libswscale_VERSION    THEN "YES (${FFMPEG_libswscale_VERSION})"    ELSE NO)
status("      avresample:"   FFMPEG_libavresample_VERSION THEN "YES (${FFMPEG_libavresample_VERSION})" ELSE NO)

卸载原装 opencv

以上还不能解决问题的话,删除所有 opencv 的安装,全部重装。

安装顺序如下:

  1. 依赖库 ( sudo apt install xxx )
  2. ffmpeg 源码编译安装
  3. 重新编译安装 opencv

参考

debug-ubuntu下opencv无法读取视频且capture.isOpened()测试一直为false-可参考
🤓opencv+ffmpeg编译打包全解指南-可参考
【环境配置】Windows 11 的 WSL(Ubuntu2204) 安装OpenCV 4.5.4 (亲测有效)
linux下 opencv 和 ffmpeg安装
RK3588移植-opencv交叉编译aarch64
瑞芯微-交叉编译环境搭建-opencv环境搭建(基于RV1109-1126)-(基于ubuntu18.04)
RK3588编译Opencv最新版
树莓派4B(aarch64,arm64)bullseye无法定位libjasper-dev文章来源地址https://www.toymoban.com/news/detail-583369.html

到了这里,关于【边缘设备】RK3588 用 opencv 的 videocapture 一直无法读取视频的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【MediaFoundation】OpenCV VideoCapture 读取音频源码

    在windows7 以及OpenCV4 过后可以使用 CAP_MSMF 读取音频,但是OpenCV没有播放音频的API。代码示例如下。 本文解析OpenCV CAP_MSMF 进行文件、设备的 音频读取,学习MediaFoundation 的使用。 配置音频流 configureAudioOutput 初始化流 initStream OpenCV捕获设备数据,采用异步模式,需要自定义一个

    2024年02月02日
    浏览(48)
  • RK3588平台开发系列讲解(驱动基础篇)设备树常用 of 函数

    平台 内核版本 安卓版本 RK3588 Linux 5.10 Android 12 沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 设备树描述了设备的详细信息,这些信息包括数字类型的、字符串类型的、数组类型的,我们在编写驱动的时候需要获取到这些信息。比如设备树使用 reg 属性描述了某个

    2024年02月08日
    浏览(55)
  • rockchip rk3588添加uvc及uvc,adb的复合设备

    软硬件环境:         软件基础:我目前拿到的rk3588 sdk : git@www.rockchip.com.cn:2222/Android_S/rk3588- manifests.git         硬件基础:RK3588 LP4X EVB          uvc_app: 从rv1126 sdk中rv1126_sdk/rv1126/external/uvc_app 目录移植而来。移植后,可以采集开发板板载摄像头图像(/dev/video11)获

    2024年02月09日
    浏览(54)
  • cv2.VideoCapture使用,opencv读取摄像头,视频图像

            cv2.VideoCapture()用于读取视频,也可以用于读取摄像头图像。         上面的2种写法,第一种表示读取摄像头,第二种读取视频文件,返回值就是视频数据。         在读取到视频后,可以使用isOpened方法来判断视频是否能够打开,能打开返回True,不能够打

    2024年02月12日
    浏览(80)
  • 瑞芯微RK3588,交叉编译opencv

    这里以opencv-4.6.0为例子。 下载: opencv-4.6.0 opencv_contrib-4.6.0 .cache 提取码:0816 eigen-3.3.9. ffmpeg-6.0 yasm-1.3.0 交叉编译器_gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz 注意:不要关闭当前终端!后面编译opencv也在当前终端。这里很重要! 安装libgtk2.0-dev时的报错,解决方案 以上,有

    2024年02月08日
    浏览(56)
  • RK3588移植opencv(包含opencv_contrib)过程

    后面给大家准备了我自己编译好的(百度云链接),如果有用,麻烦点个赞!!! PC端:Ubuntu 16.04  opencv 版本: 3.4.13 编译器:aarch64-linux-gnu 工具:cmake opencv-3.4.13 http://链接:https://pan.baidu.com/s/1YBohe41YuOhBZ2iCIupmLA 提取码:0012 --来自百度网盘超级会员V4的分享 opencv_contrib-3.4.

    2024年02月16日
    浏览(45)
  • RK3588移植-opencv交叉编译aarch64

    注意:本文中的所有配置相关路径都与当前安装的路径有关,需要根据自己的环境进行自行修改!!! OPENCV如果需要ffmpeg视频模块的话,不建议用cmake-gui,有很多bug。建议在ffmpeg相关依赖配置好后使用“问题:”中的cmake命令。 在做yolov5移植rk3588时,由于RKNPU2的example中open

    2024年02月06日
    浏览(51)
  • rk3588配置uac功能,android13使能uac及adb的复合设备

              最近,因新增需求需要在现有产品上增加UAC的功能,查阅并学习相关知识后,在rk3588 SOC硬件平台搭载android13系统平台上成功配置了uac及uacadb的复合设备。基于开源共享精神希望给大家提供些参考。         (1)我首先预览rockchip发布的文档包,遍历了系统及

    2024年01月20日
    浏览(55)
  • OpenCV读取视频失败<无可用信息,未为 opencv_world453.dll 加载任何符号> cv::VideoCapture

    OpenCV读取视频失败<无可用信息,未为 opencv_world453.dll 加载任何符号> cv::VideoCapture 出现这种情况基本是因为: VideoCapture 读取视频路径错误。 比如:在这里我电脑不知道为什么默认摄像头是1不是0,所以视频读取错误,我改为 VideoCapture cap(1)就对了。 同理,如果调用的不是

    2024年01月23日
    浏览(44)
  • RK3566、RK3568、RK3588等在Android设置-显示中无法看到显示器的所有分辨率

    显示器支持4K、1080、720等一系列分辨率,但是在Android 的设置-显示-HDMI中无法显示到屏幕支持的分辨率。 EDID位置在 /sys/class/drm/card0-HDMI-A-1/edid 通过adb pull到电脑上,再通过EDID manager解析查看是否获取到的和显示器支持的一致 如果一致继续步骤 原因就是因为分辨率的白名单过

    2024年02月16日
    浏览(79)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包