cv2.error: OpenCV(3.4.9) C:\projects\opencv-python\opencv\modules\core\src\arithm.cpp:687: error: (-5:Bad argument) When the input arrays in add/subtract/multiply/divide functions have different types, the output array type must be explicitly specified in
时间: 2023-07-21 20:10:50 浏览: 180
这个错误通常是因为两个操作数的数据类型不同,导致无法进行操作。在这种情况下,您需要将数据类型匹配,或者在使用OpenCV的算术函数时明确指定输出数组的数据类型。
以下是一些可能的解决方法:
1. 将两个操作数的数据类型匹配:您可以使用`astype()`方法将其中一个数组的数据类型转换为另一个数组的数据类型。例如,如果第一个数组是uint8类型,而第二个数组是float类型,您可以使用以下代码将第二个数组转换为uint8类型:
```python
array2 = array2.astype(np.uint8)
```
2. 明确指定输出数组的数据类型:在使用OpenCV的算术函数时,您可以使用`dtype`参数明确指定输出数组的数据类型。例如,如果您想将两个数组相加,并将结果存储在一个uint8类型的数组中,您可以使用以下代码:
```python
result = cv2.add(array1, array2, dtype=cv2.CV_8U)
```
在这个示例中,我们使用了`cv2.CV_8U`常量来指定输出数组的数据类型为uint8。
希望这些解决方法能够帮助您解决问题。
相关问题
Ubuntu安装opencv3.4.9
安装OpenCV 3.4.9在Ubuntu上可以按照以下步骤进行:
1. 更新系统软件包:
```
sudo apt update
sudo apt upgrade
```
2. 安装依赖项:
```
sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt install python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev
```
3. 下载OpenCV源代码:
```
cd ~
git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 3.4.9
```
4. 创建并进入构建目录:
```
cd ~
mkdir opencv_build
cd opencv_build
```
5. 配置OpenCV编译选项:
```
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
```
6. 编译并安装OpenCV:
```
make -j$(nproc)
sudo make install
```
7. 配置动态链接库:
```
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
```
至此,你已经成功安装了OpenCV 3.4.9。你可以在编译和运行代码时使用OpenCV库。
ubuntu18.04安装opencv3.4.9
### 回答1:
要在Ubuntu 18.04安装OpenCV 3.4.9,您可以按照以下步骤操作:
1. 打开终端并更新软件包列表:sudo apt-get update
2. 安装所有必需的依赖项:sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
3. 下载OpenCV 3.4.9源代码:git clone https://github.com/opencv/opencv.git
4. 创建一个构建目录并进入该目录:cd opencv && mkdir build && cd build
5. 运行以下指令进行配置:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
6. 编译OpenCV:make -j4
7. 安装OpenCV:sudo make install
8. 最后,重新载入动态链接库:sudo ldconfig
现在您已经成功安装了OpenCV 3.4.9。
### 回答2:
在安装前,请确保已经安装了Ubuntu 18.04和一些必要的软件包和编译工具,如build-essential, cmake, git, python等。安装过程分为三个主要步骤:
步骤1:下载和安装OpenCV的依赖项
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev libv4l-dev libxvidcore-dev libx264-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev python3-dev python3-numpy libjpeg8-dev libjpeg-turbo8-dev libtiff5-dev libjasper-dev libpng12-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libv4l-dev libtbb-dev qt5-default libopencv-dev libqt5opengl5-dev
步骤2:下载和编译OpenCV
进入OpenCV的Github页面:https://github.com/opencv/opencv/releases,并下载此时的最新版本。
mkdir ~/opencv
cd ~/opencv
wget -O opencv.tar.gz https://github.com/opencv/opencv/archive/3.4.9.tar.gz
tar xf opencv.tar.gz
删除.tar.gz文件
rm opencv.tar.gz
这时候你就得到opencv-3.4.9文件夹了
接下来,进入opencv-3.4.9/build文件夹,创建编译目录并进行编译。
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D ENABLE_NEON=ON ..
make -j$(nproc)
sudo make install
现在,opencv就已成功地安装到了/usr/local/路径。
步骤3:验证并使用OpenCV
为了验证OpenCV是否已成功安装,请运行opencv_version命令。
opencv_version
有关如何使用OpenCV,这里就不再详述,您可以参考OpenCV的官方文档:
http://docs.opencv.org/3.4.9/d8/dfe/classcv_1_1Mat.html
以上就是安装OpenCV的详细步骤,希望对您有所帮助。
### 回答3:
Ubuntu 18.04是一款常用的操作系统,安装OpenCV 3.4.9可以执行以下步骤:
1. 更新系统软件源
在终端中执行如下操作命令:
sudo apt-get update
sudo apt-get upgrade
2. 安装依赖库
在终端中执行如下操作命令:
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev gfortran openexr libeigen3-dev libtbb-dev
3. 下载OpenCV源码
在终端中执行如下操作命令:
sudo mkdir /opt/opencv
cd /opt/opencv
sudo wget -O opencv.zip https://github.com/opencv/opencv/archive/3.4.9.zip
sudo unzip opencv.zip
cd opencv-3.4.9/
4. 编译OpenCV
在终端中执行如下操作命令:
sudo mkdir build
cd build
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make -j8
sudo make install
5. 配置环境变量
在终端中执行如下操作命令:
sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
6. 验证OpenCV安装是否成功
在终端中执行如下操作命令:
cd opencv-3.4.9/samples/cpp/
sudo chmod +x build_all.sh
sudo ./build_all.sh
sudo ./cpp-example-edge
以上即是在Ubuntu 18.04上安装OpenCV 3.4.9的步骤,需要注意的是,安装过程中需要保证设备已连接网络,依赖库的安装及源码下载需要时间,请等待执行完毕。
阅读全文