美文网首页
opencv笔记(2):图像剪切和图像移位

opencv笔记(2):图像剪切和图像移位

作者: 寻风浪 | 来源:发表于2019-04-23 09:36 被阅读0次

    生活就像大海,我就像一条咸鱼,在浩瀚的海洋中边浪边学,这是opencv笔记系列中的「图像剪切」和「图像移位」。更多笔记可关注「浪学」公众 ~

    世间万图,皆可剪切和移位。这一篇以很咸鱼的方式把它们记录下来。

    首先载入图像

    import cv2
    import numpy as np
    from matplotlib.pyplot import imshow
    %matplotlib inline
    
    img = cv2.imread('image.jpg',1)
    imgInfo = img.shape
    height = imgInfo[0]
    width = imgInfo[1]
    #  显示原图
    imshow(img)
    

    原图如下:

    浪学公众号

    图像剪切:图像剪切的操作比较简单, 只需要对图片的像素矩阵进行切片操作就行了。

    dst = img[100:200, 100:300]
    imshow(dst)
    

    得到剪切后的图像显示如下

    浪学公众号

    图像移位:

    1)第一种方法,建立偏移矩阵, 然后用矩阵映射

    # 方法1
    matShift = np.float32([[1,0,100],[0,1,200]])  # 偏移矩阵
    dst = cv2.warpAffine(img, matShift, (height, width))  # 映射
    

    2)第二种方法,直接像素操作

    # 方法2
    dst = np.zeros(img.shape, np.uint8)
    # 像素操作
    for i in range(height):
        for j in range(width-100):
            dst[i, j+100] = img[i,j]
    

    两种结果的输出如下

    浪学公众号

    今天的笔记就记录这么多了,阿浪已经泡好了咖啡,换个姿势,继续晒太阳。。。

    相关文章

      网友评论

          本文标题:opencv笔记(2):图像剪切和图像移位

          本文链接:https://www.haomeiwen.com/subject/zyemgqtx.html