`

Java图像图片 边缘检测

阅读更多
对图片进行边缘检测在很多领域是非常重要的,例如:车牌号码的识别。边缘检测用到的算法我这里既不关心也不去深究了,只提供算法,对算法有兴趣的读者可以自己去找找图像处理的书参考下,或者也可以给我留言。
public final BufferedImage getPicEdge(BufferedImage originalPic) {
		int imageWidth = originalPic.getWidth();
		int imageHeight = originalPic.getHeight();

		BufferedImage newPic = new BufferedImage(imageWidth, imageHeight,
				BufferedImage.TYPE_3BYTE_BGR);

		float[] elements = { 0.0f, -1.0f, 0.0f, -1.0f, 4.0f, -1.0f, 0.0f,
				-1.0f, 0.0f };

		// AffineTransform at = new AffineTransform();
		Kernel kernel = new Kernel(3, 3, elements);
		ConvolveOp cop = new ConvolveOp(kernel, ConvolveOp.EDGE_NO_OP, null);
		cop.filter(originalPic, newPic);
		return newPic;
	}

以上算法大体思路是:拿到一个图片的内存对象:BufferedImage,然后创建一个和原始图片一样大小的新的BufferedImage内存对象,将经过处理后的图片信息存在新的内存对象里,并返回。
运行效果图:
边缘检测前的图片:

边缘检测后的图片:


具体的程序代码请参考附件。

文章地址:http://javapub.iteye.com/blog/685468

相关文章
Java图像图片 边缘检测 http://javapub.iteye.com/blog/685468
Java图像变灰 http://javapub.iteye.com/blog/687082
Java 给图片增加 水印图片 水印文字 [url]Java 给图片增加 水印图片 水印文字[/url]
Java图像渐变 http://javapub.iteye.com/blog/736799
Java将大图片转成小图片 http://javapub.iteye.com/blog/666607
8
6
分享到:
评论
2 楼 li375268037 2011-09-22  
1 楼 ivy013 2010-06-07  
这方法很好。。。。。

相关推荐

    java图片高级处理(渐变,锐化,边缘检测)

    在Java编程语言中,对图片进行高级处理包括各种图像操作,如渐变、锐化和边缘检测等。这些技术在图像处理和计算机视觉领域中至关重要,可以用于改善图像质量、识别图像特征或创建视觉效果。以下是对这些概念的详细...

    java+图像边缘检测系统

    本项目“java+图像边缘检测系统”是利用Java编程语言实现的一套图像边缘检测算法,旨在通过各种不同的算子进行卷积运算来识别图像的边缘。 首先,我们来了解一下边缘检测的基本概念。边缘检测是通过对图像进行分析...

    图像边缘检测的Java实现

    图像边缘检测是图像处理中的关键步骤,用于识别和提取图像中的边界信息,这对于图像分析、目标识别和机器视觉等应用至关重要。在Java中实现边缘检测,通常会涉及到一系列的算法和技术,这里主要介绍的是Canny边缘...

    数字图像边缘检测的Java实现资料.pdf

    数字图像边缘检测的Java实现资料.pdf

    VC++图像锐化和边缘检测

    在图像处理领域,锐化和边缘检测是两个关键的技术,用于增强图像的细节和识别图像中的边界。在本文中,我们将深入探讨使用VC++实现这些技术的原理与方法,包括微分运算、梯度锐化算子、Roberts边缘检测、Sobel边缘...

    opencv+java实现灰度化、二值化、轮廓描边、边缘检测源码有注释

    在这个项目中,我们将深入探讨如何使用Java结合OpenCV库实现图像的灰度化、二值化、轮廓描边以及边缘检测等基本操作。这些功能在图像分析、识别和机器学习应用中扮演着重要角色。 首先,我们来看**灰度化**。灰度化...

    边缘检测-java-canny

    Canny边缘检测算法是一种多阶段边缘检测算法,广泛应用于图像处理领域。该算法的主要目的是找出图像中的最佳边缘,其过程包括高斯滤波、计算梯度幅度与方向、非极大值抑制以及双阈值检测与边缘连接。 #### 二、Java...

    数字图像处理 JAVA 边缘检测 图像增强

    JAVA可以结合边缘检测的结果,采用阈值分割、区域生长、水平集等方法进行图像分割。例如,Otsu阈值法可以自动确定最佳分割阈值,以区分前景和背景。 至于平滑处理,其主要目的是减小图像噪声或模糊图像的不连续性。...

    数字图像处理 JAVA 边缘检测 图像增强 图像分割 平滑 有界面 图像变换

    本项目基于JAVA语言,涵盖了多个关键的图像处理技术,包括边缘检测、图像增强、图像分割、平滑和图像变换,且具有图形用户界面(GUI),使得操作更为直观便捷。 1. **边缘检测**:边缘是图像中亮度或颜色发生显著...

    OpenCV 读取文件并转换灰度图像 并 边缘检测 代码

    本教程将深入探讨如何使用OpenCV读取图像文件,将其转换为灰度图像,并执行边缘检测。以下是一个详细的知识点说明: 1. **OpenCV简介**: OpenCV是一个跨平台的计算机视觉库,它包含了大量的图像处理和计算机视觉...

    基于Java的有噪图像边缘检测算法的研究

    ### 基于Java的有噪图像边缘检测算法的研究 #### 概述 本文献主要研究了一种基于Java编程语言的图像处理技术,用于改善有噪图像的质量,并准确地提取图像边缘。研究的核心在于利用模糊隶属度的加权均值滤波器来...

    Java图像处理类库 Java Image Filters

    开发者可以通过这些过滤器对图像进行一系列复杂的操作,比如模糊、锐化、边缘检测等。 在开发过程中,`Manifest`文件通常包含了关于Java应用程序的元数据,如主类名和依赖库。`build.xml`是Ant构建工具的配置文件,...

    图像sobel边缘检测,膨胀、腐蚀 的Java实现

    用java实现的图像二值化,sobel边缘检测,差分边缘检测,膨胀、腐蚀等效果。 偷懒没有加入“打开”对话框,直接在代码中指定图像文件了, String file1="d:\\pdata\\lenac128.jpg"; 如果要打开其他文件,直接...

    图像边缘检测系统设计-21页.pdf

    2. 界面可以采用MATLAB、VC++、Java等编程语言设计,要求界面能够读入并显示图片,通过各种控件选择并进行图像的边缘检测操作,操作结果在对比窗口中显示。 3. 图像边缘检测功能至少包括单方向一阶微分检测(水平/ ...

    基于Java的贝叶斯图片识别并分类的算法

    本项目是关于“基于Java的贝叶斯图片识别并分类的算法”,其核心在于利用贝叶斯定理对图像进行分析,从而实现自动化分类。 首先,我们要理解贝叶斯分类的基本原理。贝叶斯分类是一种统计分类技术,它基于贝叶斯定理...

    opencv实现边缘检测

    边缘检测是计算机视觉领域中的一个基础且重要的环节,它用于识别图像中不同物体或区域的边界。OpenCV是一个强大的开源计算机视觉库,广泛应用于图像处理和计算机视觉算法的实现,包括边缘检测。在这个主题中,我们将...

    java 照亮边缘 源码

    "java 照亮边缘"可能指的是利用Java进行图像处理时的一种技术,即边缘检测。边缘检测是图像处理的重要环节,用于识别图像中的边界,这些边界通常对应着物体的轮廓。通过这个过程,我们可以提取图像的关键信息,有助...

    javacv对图片进行文字提取,定位指定文字在图片的位置坐标,提高识别速度

    OpenCV 提供了 Canny 边缘检测、Hough 线变换等算法来寻找图像中的直线结构,这些直线可能对应于文本行。 3. 文本分割:一旦找到潜在的文字区域,我们需要进一步分割出单个字符。这可能涉及到连通组件分析,以便将...

    java图像识别(判断两个图是否相似)

    在Java中进行图像识别,...总的来说,Java图像识别并判断两图相似性涉及到多个层次的技术,从简单的像素比对到复杂的深度学习模型。开发者可以根据具体需求和环境选择合适的方法,并利用现有的开源工具简化实现过程。

Global site tag (gtag.js) - Google Analytics