그레이스케일 위조 컬러 코드
10691 단어 코드
1
void
F_Gray2Color(CvMat
*
gray_mat, CvMat
*
color_mat)
2
{
3
if
(color_mat)
4
cvZero(color_mat);
5
6
int
stype
=
CV_MAT_TYPE(gray_mat
->
type), dtype
=
CV_MAT_TYPE(color_mat
->
type);
7
int
rows
=
gray_mat
->
rows, cols
=
gray_mat
->
cols;
8
9
//
、
10
if
(CV_ARE_SIZES_EQ(gray_mat, color_mat)
&&
stype
==
CV_8UC1
&&
dtype
==
CV_8UC3)
11
{
12
CvMat
*
red
=
cvCreateMat(rows, cols, CV_8U);
//
13
CvMat
*
green
=
cvCreateMat(rows, cols, CV_8U);
//
14
CvMat
*
blue
=
cvCreateMat(rows, cols, CV_8U);
//
15
CvMat
*
mask
=
cvCreateMat(rows, cols, CV_8U);
16
17
cvSubRS(gray_mat, cvScalar(
255
), blue);
//
blue = 255 - gray
18
cvCopy(gray_mat, red);
//
red = gray
19
cvCopy(gray_mat, green);
//
green = gray , if gray < 128
20
cvCmpS(green,
128
, mask, CV_CMP_GE );
//
21
cvSubRS(green, cvScalar(
255
), green, mask);
//
green = 255 - gray , if gray >= 128
22
cvConvertScale(green, green,
2.0
,
0.0
);
//
green = 2 * green
23
24
//
25
cvMerge(blue, green, red, NULL, color_mat);
26
27
cvReleaseMat(
&
red );
28
cvReleaseMat(
&
green );
29
cvReleaseMat(
&
blue );
30
cvReleaseMat(
&
mask );
31
}
32
}
trackback:
http://www.opencv.org.cn/forum/viewtopic.php?f=1&t=9476
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
vue 단일 페이지에 여러 개의 echarts 도표가 있을 때의 공용 코드 쓰기html에서: 데이터 처리는 말할 필요가 없다.응, 직접 그림을 그려: 공통 섹션: 이 페이지를 떠날 때 파괴: 추가 정보: Vue + Echarts 차트 표시 및 동적 렌더링 준비 작업 echarts 의존 설치 n...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.