Rectified Contrastive Pseudo Supervision用于半监督医学图像分割的校正对比伪监督

摘要

医学图像分割方法通常设计为全监督以保证模型性能,这需要大量的专家注释样本,成本高且费力。半监督图像分割可以通过利用大量未标记图像和有限标记图像来缓解该问题。然而,由于伪标签中的潜在噪声和特征空间中的类可分离性不足,从大量未标记图像中学习鲁棒表示仍然具有挑战性,这破坏了当前半监督分割方法的性能。为了解决上述问题,我们提出了一种新的半监督分割方法,称为校正对比伪监督(RCPS),它结合了校正伪监督和体素级对比学习来提高半监督分割的有效性。特别是,我们为基于不确定性估计和一致性正则化的伪监督方法设计了一种新的整改策略,以减少伪标签中的噪声影响。此外,我们向网络引入了双向体素对比损失,以确保特征空间中的类内一致性和类间对比度,从而增加了分割中的类可分离性。所提出的 RCPS 分割方法已在两个公共数据集和一个内部临床数据集上得到验证。实验结果表明,与半监督医学图像分割中的最新方法相比,所提出的方法具有更好的分割性能。源代码可在 https://github.com/hsiangyuzhao/RCPS 获取。
索引词—医学图像分割,半监督学习,对比学习,伪监督

这项工作的贡献包括三个方面:

• 我们引入校正伪监督来学习图像空间中不同外观下的稳健表示。引入了预测不确定性估计和一致性正则化两个整改,以提高伪监督的有效性。
• 我们提出了一种双向体素对比损失和一种新颖的置信负采样策略,以提高特征空间中不同语义类之间的可分离性。我们鼓励两个增强视图应该相似,并且两个视图应该远离特征空间中的负样本。
• 我们在两个公共基准数据集上验证了提议的 RCPS,包括 MRI 中的左心房腔分割 [9] 和 CT 中的胰腺分割 [10]。实验结果表明,所提出的 RCPS 在两个基准测试中都优于其他最先进的方法。我们还包括一个内部临床数据集,用于对创伤性脑损伤 (TBI) 患者进行大脑分割,与我们之前的作品相比,实现了最先进的分割性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要进行双目图像校正的话,你可以使用OpenCV库来实现。下面是一个使用Python进行双目图像校正的示例代码: ```python import cv2 import numpy as np # 读取左右相机的图像 img_left = cv2.imread('left_image.jpg') img_right = cv2.imread('right_image.jpg') # 定义相机的内参和畸变系数 camera_matrix = np.array([[fx, 0, cx], [0, fy, cy], [0, 0, 1]]) distortion_coeffs = np.array([k1, k2, p1, p2, k3]) # 获取图像的大小 image_size = (img_left.shape[1], img_left.shape[0]) # 进行双目校正 retval, _, _, _, _, R, T, E, F = cv2.stereoCalibrate( object_points, image_points_left, image_points_right, camera_matrix, distortion_coeffs, camera_matrix, distortion_coeffs, image_size) # 计算校正变换 R1, R2, P1, P2, Q, _, _ = cv2.stereoRectify( camera_matrix, distortion_coeffs, camera_matrix, distortion_coeffs, image_size, R, T) # 根据校正变换进行图像校正 map1_left, map2_left = cv2.initUndistortRectifyMap( camera_matrix, distortion_coeffs, R1, P1, image_size, cv2.CV_16SC2) map1_right, map2_right = cv2.initUndistortRectifyMap( camera_matrix, distortion_coeffs, R2, P2, image_size, cv2.CV_16SC2) img_left_rectified = cv2.remap(img_left, map1_left, map2_left, cv2.INTER_LINEAR) img_right_rectified = cv2.remap(img_right, map1_right, map2_right, cv2.INTER_LINEAR) # 显示校正后的图像 cv2.imshow("Left Rectified", img_left_rectified) cv2.imshow("Right Rectified", img_right_rectified) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这段代码中,你需要根据实际情况替换左右相机图像的文件路径、相机的内参和畸变系数,以及校正所需的点云和图像点。然后,代码会根据输入的参数进行双目图像校正,并显示校正后的图像。 请确保已经安装了OpenCV库,并且将左右相机的图像文件放置在正确的路径下。另外,根据你的实际需求,你可能还需要做一些额外的处理,比如立体匹配等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值