본문 바로가기
Open CV

[OPENCV-C++ ] segmentation

by TYB 2023. 11. 26.
반응형

 

 

왼쪽처럼 아예 white로 받아와도 되고, 원본의 색깔을 다시 and 연산으로 넣어줘도 된다

 

 

 

 

 

 

#pragma once

#include "ISP.h"

int main()
{
	std::string fileName = "../KCCImageNet/shapes.jpg";
	cv::Mat src_gray = cv::imread(fileName, cv::ImreadModes::IMREAD_GRAYSCALE);
	


	uchar* pData = src_gray.data;
	size_t width = src_gray.cols;
	size_t height = src_gray.rows;
	cv::Mat src_bin = Mat::zeros(cv::Size(width, height), CV_8UC1);//src_binary 메모리 생성하고 0으로 채우기
	cv::Mat src_obj = Mat::zeros(cv::Size(width, height), CV_8UC1);//src_binary 메모리 생성하고 0으로 채우기
	uchar* pDataBin = src_bin.data;
	int threshold_min = 60; //0~255 
	int threshold_max = 200; //0~255 
	//이진화, Binary
	for (size_t i = 0; i < width*height; i++)
	{
		int value = pData[i];
		(value > threshold_max) ? pDataBin[i] = 0 : pDataBin[i] = 255;//삼항 연산자 처리
		src_obj = src_bin & src_gray;
	}


	return 1;
}

 

반응형