
OpenCV
笨笨熊咦
毕业于郑州大学·信息工程学院,曾就业于河南汉威集团·雪城软件。互相伤害互相学习。
展开
-
Java 基于 OpenCV4.4 - 视频流处理教程 (六)
一、处理视频流 Java版本的OpenCV提供了一个videoio包,以及一个特定的VideoCapture对象,它提供了多种方法来直接从连接的视频设备中读取矩阵对象。首先,你会看到如何从视频设备中获取一个特定大小的矩阵对象,然后将矩阵存入文件中。通过使用帧(frame),你将看到如何将之前学习到的预处理代码应用在实时获取到的图像中。首先介绍do_still_captures函数。它的输入参数是一组需要抓取的帧、每帧间隔的时间以及从哪个camera_id读入图像。camera_id是连接到你...原创 2020-11-07 23:11:04 · 5996 阅读 · 0 评论 -
Java 基于 OpenCV4.4 - 学习Canny函数处理图片教程 (六)
一、高亮显示图片中的物体一张图片中包含一组物体、动物或者形状,也许是因为你想得到图像中物体的个数,想把它们高亮显示出来。在OpenCV中提供了一个非常有名的函数叫作Canny,它可以高亮显示图像中的线条。OpenCV的Canny函数可以检测灰度矩阵中的轮廓。我们需要做的只是把输入的矩阵转换为灰度图像,剩下的工作将由Canny完成。通过Core类中的cvtColor函数,OpenCV可以很容易地改变颜色空间。1. 和往常一样加载如下图片Mat small = Imgcodecs.imread原创 2020-11-01 22:45:25 · 795 阅读 · 0 评论 -
Java 基于 OpenCV4.4 - 利用子矩阵生成矩阵教程 (五)
一、通过多个子矩阵生成一个完整的矩阵 在OpenCV中两个非常重要的函数:setTo和copyTo。setTo可以将一个矩阵中的所有像素设置为指定的颜色,而copyTo可以将一个已有的矩阵复制到另一个矩阵之中。当使用setTo或者copyTo时,你经常需要与子矩阵打交道,即只对矩阵中的一部分进行处理。为了使用setTo,我们会用到OpenCV的Scalar对象来定义颜色,这里会使用RGB颜色空间的一组值来创建。 首先我们通过RGB值来定义颜色。之前提到过,颜色是通过Scalar对象创...原创 2020-10-29 22:40:23 · 523 阅读 · 0 评论 -
Java 基于 OpenCV4.4 - 利用子矩阵修剪图像教程(四)
一、利用子矩阵修剪图像通过submat来截取我们想要的那部分内容,主要目标是介绍submat函数。submat的返回值是一个矩阵对象,内容是原图的子矩阵或子区域。我们使用imread来读取图片文件,然后通过submat来截取我们想要的那部分内容。1. 读取图片,获取图像的原始信息。代码示例:@Test public void test08() throws Exception { URL url = ClassLoader.getSystemResource("lib/原创 2020-10-25 22:49:01 · 1374 阅读 · 0 评论 -
Java 基于 OpenCV4.4 - 加载图像及保存图像教程 (三)
一、加载图像从指定路径下加载图像文件,并把它转换为Mat对象以进行数字操作。OpenCV有一个名为imread的简单函数,用以从文件中读取图像。它通常只需要图像在本地文件系统上的文件路径,但同时这个函数还带有一个缺省的类型参数。让我们看看如何使用不同形式的imread。图片 888.png通过Imgcodecs 类 获取 888.png 图像信息,代码如下: @Test public void test03(){ URL url = ClassLoade.原创 2020-10-25 00:22:53 · 1121 阅读 · 0 评论 -
Java 整合 OpenCV4.4 之 学习OpenCV矩阵对象基础知识教程 (二)
一、OpenCV 矩阵 基础学习我们有多种方法可以获得现实世界的数字图像:数码相机、扫描仪、计算机体层摄影或磁共振成像就是其中的几种。在每种情况下我们(人类)看到了什么是图像。但是,转换图像到我们的数字设备时我们的记录是图像的每个点的数值。OpenCV 是一个计算机视觉库,其主要的工作是处理和操作,进一步了解这些信息。因此,你需要学习和开始熟悉它的第一件事是理解OpenCV 是如何存储和处理图像。早期的 OpenCV 中,使用 IplImage 和 CvMat 数据结构来表示图像。IplIma.原创 2020-10-24 22:47:41 · 751 阅读 · 0 评论 -
Java 整合 OpenCV4.4 之项目安装测试 教程 (一)
一、opencv 简介OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Java、Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法(百度百科)。opencv采用C语言进行优化,而且,在多核机器上面,其运行速度会更快。它的一个目标是提供友好的机器视觉接口函数,从而使得复杂的机器视觉产品可以加速原创 2020-10-22 23:38:13 · 2992 阅读 · 1 评论