gpt4 book ai didi

opencv - 如何使用 opencv_createsamples 将 png 格式的透明背景图像与 jpg 图像结合起来?

转载 作者:行者123 更新时间:2023-12-02 17:34:03 27 4
gpt4 key购买 nike

我目前正在做一个项目,该项目包括使用 OpenCV 命令检测给定图像中的手,由于缺少正图像,我尝试使用命令 人工创建它们opencv_createsamples ,背景图片(或负片)在.jpg格式,我的肯定是 .png具有透明背景的格式,预期的结果应该是这样的:
enter image description here
但是我在运行这个命令后得到了什么:opencv_createsamples -img pos2/img.png -bg bg2.txt -info info/info.lst -pnginput info -maxxangle 0.5 -maxyangle 0.5 -maxzangle 0.5 -num 405在哪里 :

  • img.png 包含具有透明背景的手
  • bg2.txt 负 jpg 图片(或背景)列表
  • info 是将创建所有示例的文件夹
  • info.lst 是一个文件,其中包含图像路径以及每个正图像的位置和数量

  • 曾是:

    如您所见,正图像仍然具有白色背景,并且没有预期的透明度(图像很小,因为它是 100x100,正图像是 50x50)。
    我的问题是,有没有办法使用命令 获得类似于第一张图像的结果? opencv_createsamples ?

    最佳答案

    我快速浏览了(我认为)使用的函数的源代码:

    https://github.com/opencv/opencv/blob/master/apps/createsamples/utility.cpp

    你可以看到的是每次imread被称为第二个参数是IMREAD_GRAYSCALE .这意味着无论源图像格式是什么,它都将始终转换为灰度。如果图像中存在 alpha channel ,则会得到 discarded .

    因此,我认为鉴于此信息,无法使用此功能获得您想要的结果。

    关于opencv - 如何使用 opencv_createsamples 将 png 格式的透明背景图像与 jpg 图像结合起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53224262/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com