【opencv-java】灰度图片的二值化和发二值化和

图片的二值化和反二值化的意思是把图片的颜色变成纯黑色或者纯白色

两者正好相反

上代码

package com.xs.test.erzhihua;

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;

public class Erzhihua {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
 		System.loadLibrary(Core.NATIVE_LIBRARY_NAME);// 只要是用opencv 就得用
		Mat image = Imgcodecs.imread("F:/opencv/mn.png", 0);// 读取图片,第二个参数是图片读取方式0:灰度 1,彩色

		HighGui.imshow("原图", image);// 显示读取的图片
		
		//二值化
		Mat image2 = new Mat();
		//在127到255之间的都变成白色
		Imgproc.threshold(image, image2, 127, 255, Imgproc.THRESH_BINARY	);

		HighGui.imshow("二值化", image2);
		//反二值化
		Mat image3 = new Mat();
		//在127到255之间的都变成黑色
		Imgproc.threshold(image, image3, 127, 255, Imgproc.THRESH_BINARY_INV	);
 		
		HighGui.imshow("反二值化", image3);

		HighGui.waitKey();// 阻塞进程

		HighGui.destroyAllWindows(); // 销毁窗口
	}

}

效果图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值