C++이미지 경계 확장 함수 copyMakeBorder
1.Mat 실현
//
int expandImg(
const Mat srcImg,
Mat &dstImg)
{
if(!srcImg.data || srcImg.channels()!=3){
cout<
여기 서 dstImg 은 size 를 미리 밝 히 지 않 았 고 확 장 된 size 는 srcImg 의 size 에 top,bottom,left,right 를 더 했다.2.IplImage*구현:
IplImage * expandImg(
IplImage * srcImg)
{
if(!srcImg || srcImg->nChannels != 3 || srcImg->depth != IPL_DEPTH_8U){
cout<width <= srcImg->height){
exwidth = srcImg->height;
exheight = srcImg->height;
}else{
exwidth = srcImg->width;
exheight = srcImg->width;
}
//
exchannels = 3;
IplImage* extendimg = cvCreateImage(cvSize(exwidth, exheight), IPL_DEPTH_8U, exchannels); //
cvZero(extendimg); // 0
cvCopyMakeBorder(srcImg, extendimg, cvPoint(0,0), IPL_BORDER_CONSTANT, cvScalar(avgB, avgG, avgR));
return extendimg;
}
여기 서 extendeImg 은 size 병 치 0 을 미리 밝 히 고 srcImg 을 extendeImg 의(0,0)위치 에 두 어 확장 합 니 다.참고:
OpenCV 에서 이미지 경계 확장 copy MakeBorder 구현
이미지 변환-볼 륨 경계(cvCopyMakeBorder)
opencv 경계 채 우기 cvcopymakeborder
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
알아두면 편한 C++하지만 C++에는 템플릿이라는 최고의 문법이 존재하므로 자료형에 의존하지 않는 함수를 만들 수 있게 된다. -> 포인터 ptr을 이용해서 val의 값을 변경할 수 없음 -> 포인터 ptr가 상수화되었고, ptr을 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.