opencv函数展示2

一、像素操作与算术运算

1.cv2.split()

  1. cv2.merge()

3.cv2.add()

4.cv2.bitwise_and()

5.cv2.bitwise_or()

6.cv2.inRange()

二、仿射变换

1.cv2.getRotationMatrix2D()

2.cv2.warpAffine()

3.cv2.flip()

4.cv2.resize()

三、透视变换

1.cv2.getPerspectiveTransform()

2.cv2.warpPerspective()

四、常用插值方法

  • cv2.INTER_NEAREST: 最近邻插值

  • cv2.INTER_LINEAR: 双线性插值(默认)

  • cv2.INTER_CUBIC: 双三次插值

  • cv2.INTER_AREA: 区域插值(缩小图像时效果较好)

  • cv2.INTER_LANCZOS4: Lanczos插值

五、边界填充方式

  • cv2.BORDER_CONSTANT: 常数填充

  • cv2.BORDER_REPLICATE: 复制边缘像素

  • cv2.BORDER_REFLECT: 镜像反射

  • cv2.BORDER_WRAP: 平铺重复

图像矫正练习1.

复制代码
import cv2
import numpy as np

img = cv2.imread("../images/youhua2.png")
cv2.imshow("original image", img)

# 进行透视变换
# 1、获取透视变换矩阵
# 源图像中的四个点
src = np.array([[180, 120],
                [632, 12],
                [670, 528],
                [90, 466]], dtype="f4")

# 目标图像中的四个点
dst = np.array([[0, 0],
                [800, 0],
                [800, 640],
                [0, 640]], dtype="f4")

M = cv2.getPerspectiveTransform(src, dst)

# 2、进行透视变换
per_img = cv2.warpPerspective(img, M, (800, 640))

cv2.imshow("per_img", per_img)
cv2.waitKey(0)

运行结果:

图像矫正练习2.

复制代码
import cv2
import numpy as np

img = cv2.imread("../images/image2.png")
cv2.imshow("original image", img)

# 进行透视变换
# 1、获取透视变换矩阵
# 源图像中的四个点
src = np.array([[69, 229],
                [360, 107],
                [480, 258],
                [184, 440]], dtype="f4")

# 目标图像中的四个点
dst = np.array([[0, 0],
                [450, 0],
                [450, 330],
                [0, 330]], dtype="f4")

M = cv2.getPerspectiveTransform(src, dst)

# 2、进行透视变换
per_img = cv2.warpPerspective(img, M, (450, 330))

cv2.imshow("per_img", per_img)
cv2.waitKey(0)

运行结果:

相关推荐
思绪无限23 分钟前
YOLOv5至YOLOv12升级:木材表面缺陷检测系统的设计与实现(完整代码+界面+数据集项目)
人工智能·深度学习·目标检测·计算机视觉·木材表面缺陷检测
kishu_iOS&AI23 分钟前
深度学习 —— 损失函数
人工智能·pytorch·python·深度学习·线性回归
好运的阿财26 分钟前
OpenClaw工具拆解之canvas+message
人工智能·python·ai编程·openclaw·openclaw工具
TechubNews31 分钟前
新火集团首席经济学家付鹏演讲——2026 年是 Crypto 加入到 FICC 资产配置框架元年
大数据·人工智能
蒸汽求职1 小时前
跨越 CRUD 内卷:半导体产业链与算力基建下的软件工程新生态
人工智能·科技·面试·职场和发展·软件工程·制造
DeepModel1 小时前
通俗易懂讲透 Q-Learning:从零学会强化学习核心算法
人工智能·学习·算法·机器学习
聊点儿技术1 小时前
LLM数据采集如何突破AI反爬?——用IP数据接口实现进阶
人工智能·数据分析·产品运营·ip·电商·ip地址查询·ip数据接口
小兵张健1 小时前
一场大概率没拿到 offer 的面试,让我更坚定去做喜欢的事
人工智能·面试·程序员
2501_940041741 小时前
AI创建小游戏指令词
人工智能·游戏·prompt
AC赳赳老秦2 小时前
OpenClaw二次开发实战:编写专属办公自动化技能,适配个性化需求
linux·javascript·人工智能·python·django·测试用例·openclaw