567. Google Research - Identify Contrails to Reduce Global Warming | google-research-identify-contrails-reduce-global-warming
感谢主办方举办本次比赛,也祝贺所有获奖者们。
许多人可能已经注意到,在这个数据集上,翻转/旋转90度增强效果不佳。
我的猜测是,在将多边形标注转换为二进制掩码的过程中,最左侧的点未被包含,而最右侧的点被包含,导致图像与掩码之间出现错位。
我尝试了两种方法来解决这个问题。
这种情况下,训练/测试时增强处理起来有点棘手。
这种情况下,训练/测试时增强可以正常处理。
两种方案都有效。出于简单性考虑,我选择了方案2。我使用以下代码来应用resize512和shift1:
img_affine_matrix = np.array([[2.0, 0.0, 1.5], [0.0, 2.0, 1.5]], dtype=np.float64)
img = cv2.warpAffine(
img,
img_affine_matrix,
(512, 512),
flags=cv2.INTER_LINEAR,
borderMode=cv2.BORDER_CONSTANT,
borderValue=0,
)
注意,你需要校准warpAffine的变换矩阵M,因此最终的仿射矩阵中平移项为1.5。
def calibrate(M):
# dst + 0.5 = M(src + 0.5)
M[:, 2] += M[:, 0] * 0.5 + M[:, 1] * 0.5 - 0.5
return M
我的提交笔记本公开[在此]。
我参赛较晚,只是简单探索了其他波段和2.5D方法,之后就放弃了。最终,我只使用了假彩色图像和UNet模型。
我在小模型上做伪标签取得了一些成功,但遗憾的是没有时间将其应用到更大的模型上。