Eric12219180 2023-02-06 16:18 采纳率: 61.1%
浏览 94
已结题

CBIS-DDSM kaggle 资料处理

以下是資料下載處:
https://www.kaggle.com/datasets/awsaf49/cbis-ddsm-breast-cancer-image-dataset

img

下載後打開會有兩個子文件夾 csv和jpeg如下:

img

jpeg裡面又有好幾個文件夾:

img

"隨機"裝著mamogramm的 full mamogramm, cropped images 和 ROI images,
看似只能够过csv档之间的交叉比对才能够找出真正相对应的 full mamogramm, cropped images, 和ROI images.

img


我想要把真正对应的 full mamogramm, cropped images, 和ROI images.分别装在同样的文件夹里面。
感觉很复杂, 有人做过或是会做的吗?

  • 写回答

3条回答 默认 最新

  • cjh4312 2023-02-06 21:47
    关注
    #复制文件函数
    def copy_files(l,dd):
        for n in range(len(dd)):
            d=re.findall(r'/(.*)/', dd.loc[n,'image file path'])[0]
            a=re.findall(r'/(.*)', d)[0]
            old_path=f"D:/archive/jpeg/{a}"
            full_filenames=os.listdir(old_path)
            
            os.makedirs(f"d:/images/{n+l}")
            for i in full_filenames:
                shutil.copy(f"{old_path}/{i}", f'd:/images/{n+l}/full_{n+l}.jpg')
                
            d=re.findall(r'/(.*)/', dd.loc[n,'cropped image file path'])[0]
            a=re.findall(r'/(.*)', d)[0]
            old_path=f"D:/archive/jpeg/{a}"
            if os.path.exists(old_path):
                cropped_filenames=os.listdir(old_path)
                for i in cropped_filenames:
                    if i[0]=='1':
                        shutil.copy(f"{old_path}/{i}", f'd:/images/{n+l}/cropped_{n+l}.jpg')
                    else:
                        shutil.copy(f"{old_path}/{i}", f'd:/images/{n+l}/roi_{n+l}.jpg')
                    
    # dd=pd.read_csv('D:/archive/csv/dicom_info.csv')
    # info=dd[['image_path','PatientName']]
    
    dd=pd.read_csv('D:/archive/csv/calc_case_description_test_set.csv')
    copy_files(0,dd)
    l=len(dd)
    
    dd=pd.read_csv('D:/archive/csv/calc_case_description_train_set.csv')
    copy_files(l,dd)
    l=l+len(dd)
    
    dd=pd.read_csv('D:/archive/csv/mass_case_description_test_set.csv')
    copy_files(l,dd)
    l=l+len(dd)
    
    dd=pd.read_csv('D:/archive/csv/mass_case_description_train_set.csv')
    copy_files(l,dd)
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月15日
  • 已采纳回答 2月7日
  • 创建了问题 2月6日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度