
CV
橙子杉
For life ,for dream~
展开
-
从json读取病灶轮廓信息画到原图中
# -*- coding:utf-8 -*-import os.pathfrom collections import defaultdict, OrderedDictimport jsonimport numpy as npimport cv2import json# /8Tdata/gaofei/data/tomo/tianjin/b1_106/image2/# /8Tdata/gaofei/data/tomo/tianjin/b2_400/image2/#json文件with.原创 2022-05-21 15:54:27 · 372 阅读 · 0 评论 -
使用python的opencv将图像分割后的mask轮廓叠加在原图上
使用python的opencv将图像分割后的mask轮廓叠加在原图上转载 2022-05-18 14:12:11 · 2414 阅读 · 2 评论 -
从json读取轮廓信息画到原图中
# encoding:utf-8import json,xlwtdef writeM(file): # 0 1 title = ["patientID","nodeID ",# 2 3 4 5 6 7 "2D-是否可见", "2D-形状","2D-密度","2D-边缘","2D-伴随钙化",.原创 2022-05-21 15:30:22 · 440 阅读 · 0 评论 -
从mask读取轮廓点坐标到json文件
import osfrom collections import defaultdict, OrderedDictimport jsonimport numpy as npimport cv2import globclass NpEncoder(json.JSONEncoder): def default(self, obj): if isinstance(obj, np.integer): return int(obj) el.原创 2022-03-28 10:15:08 · 1536 阅读 · 0 评论 -
10折交叉验证
import osimport cv2import randomimport shutilimport numpy as npdef get_data_crop(k): # 获取所有病人序列名称与所有训练文件名称 name_list, file_list = [], [] for root, dirs, files in os.walk('./seg'): for f in files: if f.split('-')[0] n.原创 2022-03-15 14:56:53 · 3088 阅读 · 0 评论 -
显示图片灰度值/不同类别mask提取轮廓坐标并显示
import numpy as npimport cv2import osfrom PIL import Imageimport matplotlib.pyplot as pltimbgr = cv2.imread('./pre/1464455/068.png')imgray = cv2.imread('./data/068.png',0)# 以灰度图读取mask图片,那么不同物体对应的像素值是不同的,提取统一像素值的所有位置#img = Image.open('./data/2.原创 2022-03-05 11:47:13 · 4615 阅读 · 0 评论 -
png转nii
import nibabel as nibdef save_array_as_nii_volume(data, filename, reference_name=None): # img = sitk.GetImageFromArray(data) # if (reference_name is not None): # img_ref = sitk.ReadImage(reference_name) # img.CopyInformation(img_.原创 2022-02-18 20:48:45 · 429 阅读 · 0 评论 -
【无标题】
import SimpleITK as sitkimport globimport numpy as npfrom PIL import Imageimport cv2def save_array_as_nii_volume(data, filename, reference_name=None): img = sitk.GetImageFromArray(data) if (reference_name is not None): img_ref = si.原创 2022-02-18 20:47:42 · 89 阅读 · 0 评论 -
png转nii
import SimpleITK as sitkimport globimport numpy as npfrom PIL import Imageimport cv2def save_array_as_nii_volume(data, filename, reference_name=None): img = sitk.GetImageFromArray(data) if (reference_name is not None): img_ref = si.原创 2022-02-17 21:49:54 · 907 阅读 · 0 评论 -
dicom转nii
import osimport SimpleITK as sitkdef readdcm(filepath): #最终发现是输入路径有中文,SimpleITK.ImageSeriesReader.GetGDCMSeriesFileNames(path)中path不能含有中文,否则无法读取。 series_id = sitk.ImageSeriesReader.GetGDCMSeriesIDs(filepath) series_file_names = sitk.ImageSe.原创 2022-02-17 20:36:06 · 480 阅读 · 0 评论 -
NMS减少框
import numpy as npdef NMS(nums, threshold): x1 = nums[:, 0] y1 = nums[:, 1] x2 = nums[:, 2] y2 = nums[:, 3] area = (x2 - x1) * (y2 - y1) score = nums[:, 4] score = np.argsort(score)[::-1] # 函数是将x中的元素从小到大排列,提取其对应的index(索引),.原创 2022-01-03 19:56:26 · 1767 阅读 · 0 评论 -
Dice、Sensitivity、ppv、miou
def dice_coef(output, target):#output为预测结果 target为真实结果 smooth = 1e-5 #防止0除 if torch.is_tensor(output): output = torch.sigmoid(output).data.cpu().numpy() if torch.is_tensor(target): target = target.data.cpu().numpy() inter.原创 2022-01-03 19:55:32 · 384 阅读 · 0 评论 -
LI-RADS病灶分类读书笔记
通过参考经验丰富的放射科医生的放射学报告,并遵循以下标准将肝肿物分为5类:手术或活检后的组织病理学评估(A-C类);影像学标准(A类,早期增强和延迟洗脱;C类[高血管病变],延迟相图像早期增强等衰减;C类[低血管病变],动脉期低衰减,延迟期等衰减或低衰减;D类[血管瘤],动脉期周围结节强化,延迟期呈向心型充血强化,或动脉期均匀强化[接近主动脉衰减],延迟期高衰减;E类[囊肿],水衰减,无明显对比度增强);分别用未增强、动脉期和延迟期CT图像进行训练像素大小:70*70CNN由几个层组成(6个卷积原创 2022-01-03 19:52:49 · 1221 阅读 · 0 评论 -
记录训练过程
train_curve = list()def train_net(net, device, data_path, epochs=100, batch_size=4, lr=0.01): # 加载训练集 isbi_dataset = ISBI_Loader(data_path) train_loader = torch.utils.data.DataLoader(dataset=isbi_dataset, .原创 2021-09-30 10:18:08 · 330 阅读 · 0 评论 -
Python测指标模板
import cv2import globimport osimport numpy as npfrom medpy import metricdef calculate_metric_percase(pred, gt): # dice = metric.binary.dc(pred, gt) # jc = metric.binary.jc(pred, gt) hd = metric.binary.hd95(pred, gt) asd = metric.bina.原创 2021-09-15 21:47:54 · 1363 阅读 · 2 评论 -
TransUNet阅读笔记
机构:约翰·霍普金斯大学/ 中国电子科技大学/ 斯坦福德大学 / 华东师范大学相关工作:CNN / Transformpatch size 消融实验:8 / 16 / 32原创 2021-09-15 19:03:25 · 789 阅读 · 0 评论 -
nnFormer阅读笔记
机构:香港大学 / 厦门大学相关工作(较新):主干基于卷积/ 主干基于transform结构:流程图总揽 / 各个模块作介绍实验:有无预训练模型原创 2021-12-18 20:18:59 · 777 阅读 · 0 评论 -
Swin-Unet阅读笔记
数据集:ACDC/Synapse指标:dice / Hd相关工作:CNN /Transformer /Attention消融实验:上下采样/ 跳跃连接 / 图片输入大小原创 2021-09-15 15:47:55 · 677 阅读 · 2 评论 -
测指标SSMI
#测试预测与真值文件夹PSNR和SSIM#注意:需要两个文件夹有相同的顺序import cv2import globimport osfrom util.metrics import PSNRfrom util.metrics import SSIMpsnr_total = 0ssim_total = 0# predlist=glob.glob(os.path.join('../Datasets/GoPro/test/results/GoPro', "*"))#预测文件夹路径# g.原创 2021-09-09 21:32:08 · 325 阅读 · 0 评论 -
K折交叉验证
import osimport cv2import randomimport shutilimport numpy as npdef get_data_crop(k): # 获取所有病人序列名称与所有训练文件名称 name_list, file_list = [], [] for root, dirs, files in os.walk('./img'): for f in files: if f.split('-')[-2] .原创 2021-08-31 11:09:48 · 155 阅读 · 0 评论 -
python批量resize图片
'cv2'import cv2import osimport glob path = r'C:\Users\87419\Desktop\cg1\img\*.jpg'for i in glob.glob(path): im1 = cv2.imread(i) im2 = cv2.resize(im1,(256,256)) cv2.imwrite(os.path.join(r'C:\Users\87419\Desktop\cg1\resize',os.path.basenam.转载 2021-08-28 15:17:24 · 1407 阅读 · 2 评论 -
2021-08-25
输出中间训练过程图片 if step % 8000 == 0: s_img = image[0].permute(1, 2, 0).cpu().numpy().astype(np.int) s_lab = np.array(label[0].permute(1, 2, 0).cpu().numpy()*255, np.int) s_pre = np.array(torch.sigmoid(pred)[0].原创 2021-08-25 13:07:13 · 180 阅读 · 0 评论 -
计算机视觉作业
https://blog.youkuaiyun.com/Accelerato/article/details/105627078转载 2020-12-21 22:48:56 · 1445 阅读 · 0 评论 -
2020-11-14-Alexnet
第一周 Alex net2020-06-15 00:00 至 2021-12-31 00:00作业内容:1.文字回答:ImageNet数据集与ILSVRC之间的关系是什么?ImageNet数据是ILSVRC比赛使用的数据集2.文字回答:AlexNet训练过程的数据增强中,针对位置,采用什么方法将一张图片有可能变为2048张不一样的图片(1个像素值不一样,也叫不一样)?训练阶段:1.图片统一缩放至256*256 2.随机位置裁剪出224*224区域 3.随机进行水平翻转测试阶...原创 2020-11-15 09:33:34 · 113 阅读 · 0 评论