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

栏目: 编程工具 · 发布时间: 7年前

内容简介:生活就像大海,我就像一条咸鱼,在浩瀚的海洋中边浪边学,这是opencv笔记系列中的「图像剪切」和「图像移位」。更多可关注「浪学」公众 ~世间万图,皆可剪切和移位。这一篇以很咸鱼的方式把它们记录下来。首先载入图像

生活就像大海,我就像一条咸鱼,在浩瀚的海洋中边浪边学,这是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)
复制代码

原图如下:

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

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

dst = img[100:200, 100:300]
imshow(dst)
复制代码

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

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

图像移位:

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):图像剪切和图像移位

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


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

来自圣经的证明

来自圣经的证明

M.Aigner、G.M.Ziegler / 世界图书出版公司 / 2006-7 / 39.00元

作为一门历史悠久的学问,数学有她自身的文化和美学,就像文学和艺术一样。一方面,数学家们在努力开拓新领域、解决老问题;另一方面他们也在不断地从不同的角度反复学习、理解和欣赏前辈们的工作。的确,数学中有许多不仅值得反复推敲理解,更值得细心品味和欣赏的杰作。有些定理的证明不仅想法奇特、构思精巧,作为一个整体更是天衣无缝。难怪,西方有些虔诚的数学家将这类杰作比喻为上帝的创造。 本书已被译成8种文字。......一起来看看 《来自圣经的证明》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具