使用OpenCV的函数hconcat()、vconcat()实现图像或矩阵的连接

使用OpenCV的函数hconcat()、vconcat()实现图像或矩阵的连接

函数hconcat()在水平方向上连接图像或矩阵;
函数vconcat()在垂直方向上连接图像或矩阵。

两个函数的原型和使用方法一模一样,所以在下面的函数原型介绍中,只介绍函数hconcat()的。

函数hconcat()的C++原型有三种,分别如下:

void cv::hconcat(const Mat * src,
                 size_t nsrc,
                 OutputArray dst)

上面这个原型中的参数nsrc表求src数组中的图像或矩阵个数。

void cv::hconcat(InputArray src1,
                 InputArray src2,
                 OutputArray dst)
void cv::hconcat(InputArrayOfArrays src,
                 OutputArray dst)

函数hconcat()的Python原型只有一种,如下:

dst=cv.hconcat(src[, dst])

这两个函数的使用非常简单,大家看一看下面的示例代码就知道怎么使用了。

在C++的示例代码中,
我把三种原型都用了一遍,
C++示例代码请参看本博文的原文,

链接 https://www.hhai.cc/thread-160-1-1.html
C++的示例代码运行结果如下:
使用OpenCV的函数hconcat()、vconcat()实现图像或矩阵的连接_第1张图片

因为Python原型只有一种,所以Python示例代码只有几行,
Python示例代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 出处:昊虹AI笔记网(hhai.cc)
# 用心记录计算机视觉和AI技术
# OpenCV的版本为4.4.0

import numpy as np
import cv2 as cv

if __name__ == '__main__':
    A1 = np.array([[1, 2],
                   [3, 4]], dtype='uint8')

    B1 = np.array([[5, 6],
                   [7, 8]], dtype='uint8')

    # Python-OpenCV中函数hconcat和vconcata只有一种原型
    C1 = cv.hconcat((A1, B1))
    C2 = cv.vconcat((A1, B1))
    

运行结果如下:
使用OpenCV的函数hconcat()、vconcat()实现图像或矩阵的连接_第2张图片

你可能感兴趣的:(图像处理原理,工具,代码,连接,hconcat,vconcat)