目前我正在处理许多长得大致相似的图像,就像这样:
我想像这样剪裁出卡车的后部:
以下是一些让此任务具有挑战性的因素:
- 卡车的颜色可能不同
- 场景可能是白天或黑夜
- 背景可以变化很大(树木、灌木、道路、天空等)
但以下条件可对我有所帮助:
- 卡车总是占据图像中的大部分
- 相机的分辨率和质量至少与此示例图像一样好
- 如果在晚上,卡车的后部将会有一个洪灾灯或类似的光源照亮
到目前为止,我很难找到有效的解决方案。以下是我尝试过的一些方法:
- 使用高斯模糊/腐蚀/膨胀/开启/关闭等方法(在获取单通道之前和之后都可以使用)
- 将图像转换为灰度图像
- 分离B、G、R通道
- 分离H、S、V通道
- 分离L、A、B通道
- 对于上述的每个通道,我都尝试了以下几种方法:
- cv::threshold()
- cv::adaptiveThreshold()
- cv::Canny()
- cv::floodFill()
- cv::watershed()
但以上方法都没有产生任何有希望的结果。
请问是否有其他替代方法或方向?也许我错过了一些有用的预处理步骤?我不确定接下来该做什么。