计算机图形学和计算机图形学现在非常流行,因为它们与人工智能有着广泛的联系。 它们的主要共同点是使用相同的OpenCV库,以便像人类一样高度了解数字图像、视频(CV )和生成的图像(CG )。
所以今天我们来看看在计算机科学领域,对于同一个库,你最受益的函数!
在讨论OpenCV的强大功能之前,请先看一下计算机视觉、计算机图形和OpenCV的定义,更好地理解这里所做的事情。
计算机视觉
计算机视觉是一个跨学科的领域,涉及计算机如何高度了解数字图像和视频。 从工程的角度来看,试图将人类视觉系统能够完成的任务自动化。 也就是说,像人类一样“理解”世界。
计算机图形学
计算机图形学是计算机科学的一部分,研究如何使用计算机生成图像。 目前,计算机图形学是数字摄影、电影、视频游戏、手机、计算机显示等许多专业应用领域的核心技术。
OpenCV
OPENCV (OPEOS ource Computer vision Library )是一个开源的计算机视觉和机器学习软件库。 OpenCV的设立是为了为计算机视觉APP提供共同的基础设施,加速机械感知在商业产品中的应用。该图书馆提供了处理和分析图像内容的工具,包括识别数码照片中的对象(人脸、图形、文本等)、跟踪对象的运动、图像转换、应用机器学习方法、识别各种图像中的公共元素等。
解决了这个问题之后,我们可以从个人选择的10个函数开始。 (使用Python写函数)
imread/imshow
这个函数必须放在最前面。 因为这个函数对于在影像中开始专案是不可缺少的。 正如根据函数名称推测的那样,加载了蓝光(bgr )格式的图像。导入CV 2
导入映射出图
image=cv2.im读('数据. png ' ) #load image
打印. im显示(图像) #显示图像
加载
cvtColor
图像后,还可以使用cvtColor的不同标志将其转换为不同的配色方案。CV2.CVT Color (图像,cv2.COLOR_BGR2RGB ) )。
以下是cvtColor的其他标志。 例如,颜色BGR 2灰色、颜色BGR2HSV和颜色BGR2YUV。
这是双向的,例如COLOR_YUV2BGR也是可能的。
resize是必要的函数,因为
resize
可能需要不同于原始大小的图像。cv2. resize (影像、维度、介入=cv2.介入区域) )。
检索原始图像,并按大小创建新图像。 大小如下所示。
dimension=(宽度,高度) ) ) )。
插值是对图像重新取样的方法。 我的示例使用基于INTER_AREA的跨区域重新采样。 还有其他类似的方法
INTER_NEAREST:最近邻插值INTER_LINEAR:双线性插值inter _ cubic :在44像素附近的双三次插值inter _ Lanczos 4:在88附近的lanc zos插值(,
split/merge
每个图像有三个通道。 如果想要将它们分割为不同的图像,可以使用分割函数来实现。(通道b,通道g,通道r )=cv2.分割(img ) ) ) ) ) ) ) ) )。
如果图像为BGR格式,则每个通道分为三个定义的变量。
如果正在分割通道,但希望将其合并在一起,请使用merge。
cv2.合并(通道b、通道g、通道r ) ) ) ) ) ) ) )。
使用
vconcat / hconcat
vconcat (,hconcat ) )垂直和水平连接图像)合并)。v表示垂直,h表示水平。
cv2.v concat ([图像1,图像2 ]
CV2. h concat ([图像1,图像2 ]
ones/zeros
三维图像(矩阵)中嵌入1或0时) )矩阵中彩色图像需要三维)。size=200,200,3
m=NP.zeros (尺寸,类型=NP.uint8) )。
n=NP.ones (大小,类型=NP.uint8) )。
作为附加函数,我想在这里添加一个叫做替换函数的函数。
transpose
如果有倒置的预定义矩阵mat,我们应该做的就是直接在mat中使用这个函数:导入编号为
mat=NP.array ([ 1,2,3 ],[ 4,5,6 ] ) )
mat _传输=mat .传输(
打印(mat _传输姿势) )。
获得输出:
十四
25
36
# #原始输入
1,2,3
4,5,6