iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >JavaOpenCV图像处理之图形与文字绘制
  • 704
分享到

JavaOpenCV图像处理之图形与文字绘制

2024-04-02 19:04:59 704人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录前言核心代码效果图前言 代码地址 序號名稱方法1圖像 添加文字Imgproc.putText2圖像 畫直綫Imgproc.line3圖像 畫橢圓Imgproc.ellipse4圖

前言

代码地址

序號名稱方法
1圖像 添加文字Imgproc.putText
2圖像 畫直綫Imgproc.line
3圖像 畫橢圓Imgproc.ellipse
4圖像 畫矩形Imgproc.rectangle
5圖像 畫園Imgproc.circle
6圖像 填充Imgproc.fillConvexPoly

核心代码

package com.xu.OpenCV.canva;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import org.opencv.core.Mat;
import org.opencv.core.MatOfPoint;
import org.opencv.core.Point;
import org.opencv.core.Scalar;
import org.opencv.core.Size;
import org.opencv.highgui.HighGui;
import org.opencv.imGCodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;


public class canvas {

    static {
        String os = System.getProperty("os.name");
        String type = System.getProperty("sun.arch.data.model");
        if (os.toUpperCase().contains("windows")) {
            File lib;
            if (type.endsWith("64")) {
                lib = new File("lib\\OpenCV-455\\x64\\" + System.mapLibraryName("opencv_java455"));
            } else {
                lib = new File("lib\\OpenCV-455\\x86\\" + System.mapLibraryName("opencv_java455"));
            }
            System.load(lib.getAbsolutePath());
        }
    }

    public static void main(String[] args) {
        fillPoly();
    }

    
    public static void putText() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        Imgproc.putText(src, "test text", new Point(60, 60), Imgproc.FONT_HERSHEY_SIMPLEX, 1.0, new Scalar(0, 255, 0), 1, Imgproc.LINE_AA, false);
        HighGui.imshow("putText", src);
        HighGui.waiTKEy(1);
    }

    
    public static void line() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        Imgproc.line(src, new Point(10, 50), new Point(100, 50), new Scalar(0, 0, 255), 1, Imgproc.LINE_AA);
        HighGui.imshow("图像画线", src);
        HighGui.waitKey(1);
    }

    
    public static void ellipse() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        Imgproc.ellipse(src, new Point(200, 200), new Size(90, 50), 0, 0, 360, new Scalar(0, 0, 255), 1, Imgproc.LINE_AA);
        HighGui.imshow("图像椭圆", src);
        HighGui.waitKey(1);
    }

    
    public static void rectangle() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        Imgproc.rectangle(src, new Point(10, 10), new Point(200, 200), new Scalar(0, 255, 0));
        HighGui.imshow("图像矩形", src);
        HighGui.waitKey(1);
    }

    
    public static void circle() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        Imgproc.circle(src, new Point(50, 50), 20, new Scalar(0, 255, 0), 2, Imgproc.LINE_8);
        HighGui.imshow("图像画圆", src);
        HighGui.waitKey(1);
    }

    
    public static void fillPoly() {
        Mat src = Imgcodecs.imread("D:\\OneDrive\\桌面\\5.jpeg");
        // 1
        List<Point> points1 = new ArrayList<>();
        points1.add(new Point(0, 100));
        points1.add(new Point(50, 50));
        points1.add(new Point(100, 100));
        points1.add(new Point(150, 50));
        points1.add(new Point(200, 100));
        points1.add(new Point(100, 250));
        Point[] array = points1.stream().toArray(Point[]::new);
        MatOfPoint point = new MatOfPoint(array);
        Imgproc.fillConvexPoly(src, point, new Scalar(0, 255, 0), Imgproc.LINE_AA);
        // 2
        List<Point> points2 = new ArrayList<>();
        points2.add(new Point(100, 100));
        points2.add(new Point(150, 50));
        points2.add(new Point(200, 100));
        Imgproc.fillConvexPoly(src, new MatOfPoint(points2.stream().toArray(Point[]::new)), new Scalar(0, 255, 0), Imgproc.LINE_AA);

        HighGui.imshow("图像填充", src);
        HighGui.waitKey(1);
    }

}

效果图

到此这篇关于Java OpenCV图像处理之图形与文字绘制的文章就介绍到这了,更多相关Java OpenCV绘制图形 文字内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: JavaOpenCV图像处理之图形与文字绘制

本文链接: https://www.lsjlt.com/news/140456.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JavaOpenCV图像处理之图形与文字绘制
    目录前言核心代码效果图前言 代码地址 序號名稱方法1圖像 添加文字Imgproc.putText2圖像 畫直綫Imgproc.line3圖像 畫橢圓Imgproc.ellipse4圖...
    99+
    2024-04-02
  • python数字图像处理之基本图形的绘制
    目录引言1、画线条2、画圆3、多边形4、椭圆5、贝塞儿曲线6、画空心圆7、空心椭圆引言 图形包括线条、圆形、椭圆形、多边形等。 在skimage包中,绘制图形用的是draw模块,不要...
    99+
    2024-04-02
  • Android图像处理之绘制圆形、三角形及扇形的头像
    前言相信大家在Android日常开发中,绘制圆形和绘制图片都是很容易的事情,但是绘制圆形图片就有点难倒人了。以前为了偷懒就直接去github上找一个开源项目,后来才发现绘制圆形图片其实也是很简单的事。绘制圆形图片也需要两个步骤:绘制圆形和绘...
    99+
    2023-05-31
    android 扇形 圆形头像
  • JavaOpenCV图像处理之背景切换
    目录实现步骤函数详解示例代码效果图实现步骤 1 读取原图片 2 获取原图片的mask 3 获取原图片需要获取的ROI 4 获取新背景的mask 5 融合 3,5 函数详解 示例代码...
    99+
    2024-04-02
  • JavaOpenCV图像处理之背景消除
    目录实现步骤主要代码效果图实现步骤 1.获取视频 2.设置形态学结构 3.创建Video.createBackgroundSubtractorMOG2() 4.提取模型 BS 5.进...
    99+
    2024-04-02
  • python数字图像处理图像的绘制详解
    目录正文一、用figure函数和subplot函数分别创建主窗口与子图二、用subplots来创建显示窗口与划分子图三、其它方法绘图并显示正文 实际上前面我们就已经用到了图像的绘制,...
    99+
    2024-04-02
  • Python图像处理之图像融合与ROI区域绘制详解
    目录一.图像融合二.图像ROI区域定位三.图像属性(1)shape(2)size(3)dtype四.图像通道分离及合并(1)split()函数(2)merge()函数五.图像类型转换...
    99+
    2024-04-02
  • 图形图像处理之简单图片
    决定Android应用是否被用户接受的一个重要的原因就是用户界面,友好的用户界面就需要使用到图形图像处理技术,包括静态图片、动画和游戏都需要大量的图形图像处理,所谓游戏,其实就是提供更逼真,能模拟某种环境的用户界面,并根据某种规则响应用户的...
    99+
    2023-06-04
  • 【python图像处理】python绘制
    3D图形在数据分析、数据建模、图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点、3D表面、3D轮廓、3D直线(曲线)以及3D文字等的绘制。 准备工作: python中绘制3...
    99+
    2023-01-31
    图像处理 python
  • OpenCV数字图像处理基于C++之图像形态学处理详解
    目录1、图像腐蚀1.1 CV腐蚀函数1.2 自定义腐蚀函数1.3 对比2、图像膨胀2.1 CV膨胀函数2.2 自定义膨胀函数2.3 对比3、开运算3.1 方法一3.2 方法二4、闭运...
    99+
    2022-12-08
    数字图像处理 opencv 基于opencv的图像处理 opencv c++入门
  • WPF基于物理像素绘制图形
    WPF中有一个DrawingContext类,该类提供了很多画法方法,例如DrawLine,DrawText,DrawRectangle等。开发者使用它们可以方便地进行图形绘制。不过...
    99+
    2024-04-02
  • python数字图像处理实现图像的形变与缩放
    目录skimage的transform模块1、改变图片尺寸resize2、按比例缩放rescale3、旋转 rotate4、图像金字塔skimage的transform模块 图像的形...
    99+
    2024-04-02
  • Java数字图像处理之图像灰度处理
    本文实例为大家分享了Java数字图像处理基础之图像灰度处理,供大家参考,具体内容如下 一、简介 图像灰度化处理可以作为图像处理的预处理步骤,在图像处理中是十分重要的一件事。灰度图像上...
    99+
    2024-04-02
  • python数字图像处理之图像的批量处理
    目录正文图片集合函数批量读取批量转换为灰度图批量保存正文 有些时候,我们不仅要对一张图片进行处理,可能还会对一批图片处理。这时候,我们可以通过循环来执行处理,也可以调用程序自带的图片...
    99+
    2024-04-02
  • Python图像处理之图像金字塔详解
    目录一.图像金字塔原理二.图像向上取样三.图像向下取样四.总结一.图像金字塔原理 上一篇文章讲解的图像采样处理可以降低图像的大小,本文将补充图像金字塔知识,了解专门用于图像向上采样和...
    99+
    2024-04-02
  • WPF基于物理像素怎么绘制图形
    本文小编为大家详细介绍“WPF基于物理像素怎么绘制图形”,内容详细,步骤清晰,细节处理妥当,希望这篇“WPF基于物理像素怎么绘制图形”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。从一个例子:从FrameworkE...
    99+
    2023-07-02
  • 如何使用Canvas绘制图形图文
    这篇文章主要讲解了“如何使用Canvas绘制图形图文”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Canvas绘制图形图文”吧!HTML5火的正热,...
    99+
    2024-04-02
  • C语言数字图像处理之图像缩放
    本文实例为大家分享了C语言实现图像缩放的具体代码,供大家参考,具体内容如下 1. 定义(摘自维基百科) 在计算机图形学中,图像缩放指的是通过增加或去掉像素来改变图片的尺寸。由于要在效...
    99+
    2024-04-02
  • Python图像处理之图像与视频处理基础教程
    目录图像与视频处理基础0. 前言1. 在 3D 空间中显示 RGB 图像颜色通道1.1 图像表示1.2 在 3D 空间中绘制颜色通道2. 使用 scikit-video 读/写视频文...
    99+
    2023-05-15
    Python图像处理 Python图像与视频处理 Python视频处理
  • python数字图像处理之基本形态学滤波
    目录引言1、膨胀(dilation)2、腐蚀(erosion)3、开运算(opening)4、闭运算(closing)5、白帽(white-tophat)6、黑帽(black-top...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作