小编Ama*_*eur的帖子

在OpenCV中将HSV转换为灰度

我是OpenCV的新手.我正在学习分水岭算法的分段,我有一个问题.

我必须使用Watershed将图像颜色转换为图像灰度.当我使用色彩空间BGR,没有问题,但空间HSV,我不确定下面的代码是否正确.

Mat im = imread("./Image/118035.jpg", CV_LOAD_IMAGE_COLOR);

Mat imHSV;
cvtColor(im, imHSV, CV_BGR2HSV);
imshow("HSV", imHSV);

cvtColor(imHSV, imHSV, CV_BGR2GRAY);
imshow("HSV to gray", imHSV);


imshow("BGR", im);
cvtColor(im, im, CV_BGR2GRAY);
imshow("BGR to gray", im);
Run Code Online (Sandbox Code Playgroud)

我认为,在从BGR转换为HSV后,Hue =蓝色,饱和度=绿色,值=红色,我可以使用运算符BGR2GRAY从HSV转换为灰度.

2图像输出不同,我可以将HSV转换为灰度吗?

//与彩色空间LAB相似吗?

opencv hsv grayscale

4
推荐指数
1
解决办法
2万
查看次数

在函数C++中使用后删除对象

我有一个关于C++中的删除内存泄漏的问题.考虑以下代码:

class AnObject{
public:
    AnObject* Foo(){
        // how can I delete this object ???
        AnObject* obj = new AnObject();
        ...
        return obj;
    }
};

int main(){
    ...
    AnObject* x = new AnObject();
    AnObject* result = x->Foo();

    delete x;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在功能AnObject :: Foo()中删除指针???

//我读了一些需要更改函数的建议,不要在函数中用new创建一个对象.但它是否存在删除此指针的方法?

c++ memory-leaks

0
推荐指数
1
解决办法
177
查看次数

标签 统计

c++ ×1

grayscale ×1

hsv ×1

memory-leaks ×1

opencv ×1