- 1
- 0
- 约1.58万字
- 约 16页
- 2023-09-16 发布于浙江
- 举报
19学年—20学年第 2 学期 医疗软件技术基础 实验三
专业名称: 生物医学工程 实验学时: 2
学号: 姓名:
实验题目:DICOM文件读取
实验环境: vscode
实验目的:
1.掌握DICOM文件的格式;
2.掌握使用C读取DICOM文件中的信息和图像。
3. 掌握OPENCV库的使用
实验内容:
(1)通过open函数读取DICOM文件;
(2)顺序读取各种Tag;
(3)通过TAG,读取相应信息;
(4)通过TAG读取图像信息,并进行调窗和显示。
实验要求:
(1) 详细报告OPENCV的配置。
(2) 程序要添加适当的注释,程序的书写要采用缩进格式。
(3) 对DICOM文件中的重要信息进行输出。
(4) 根据实验报告模板详细书写实验报告,在实验报告中给出算法的流程图。
实验程序及注释:
//?11111.cpp?:???????????ó????????
//
#include?iostream
#include?opencv2/opencv.hpp
#include?highgui.h
/*#pragma?comment(lib,?opencv_core2411.lib)
#pragma?comment(lib,?opencv_imgproc2411.lib)
#pragma?comment(lib,?opencv_highgui2411.lib)*/
using?namespace?cv;
using?namespace?std;
struct?TagValue//tag有前后两个部分
{
????unsigned?short?tag1;//FF?FF????????组号
????unsigned?short?tag2;//FF?FF????????元素号
};
enum?E_SourcePixelType?????????//像素的类型
{?
????ESourcePixelType_U16,???????//?USHORT?,为0
????ESourcePixelType_I16,???????//?SHORT??,为1
};
int?main()
{
????bool?isVR=true;//值类型(VR):?显式或者隐式
????bool?isLitteEndian=true;
????int?file_length=0;//文件长度
????char?VR[2];//长为3字节的字符数组,FF?FF?/0,没必要
????unsigned?int?pixDataLen=0;//FF?FF?FF?FF
????unsigned?int?pixDataOffset=0;
????unsigned?short?channle=0;
????unsigned?short?rows=0;
????unsigned?short?cols=0;
????unsigned?short?dataLen=0;
????unsigned?short?validLen=0;
????E_SourcePixelType?pixelType;
????int?windowsWidth=0;//窗口宽度
????int?windowsCenter=0;//窗口中心?
????bool?ZeroIsBlack=true;
????float?RescaleSlope?=0.06;
????float?RescaleIntercept=0;
????FILE?*fp;//用来指向图片文件
????fp=fopen(11.dcm,rb);
????if(fp==NULL)
????{
????????printf(can?not?open?file!);
??????????cv::waitKey();
????????return?0;
????}
????fseek(fp,0,SEEK_END);//文件指针定位到文件末尾,偏移0个字节
????file_length=ftell(fp);//算出长度,fp相对文件首的偏移量,单位字节
????fseek(fp,0,SEEK_SET);//重新定位到头
????fseek(fp,128,SEEK_SET);//跳过前128个字节的前导言
????char?headchar[5];//读前缀用的
????memset(headchar,0,5);//初始化设置0
????int?read_num?=?fread(headchar,1,4,fp);//读到前缀,读四次?????????
?????//确认是否
您可能关注的文档
- 第8章 TMS320F28335系统控制与中断.pptx
- 第9章 TMS320F28335外部接口.pptx
- 第10章 TMS320F28335功能模块.pptx
- 第11章 F28335微控制器总线接口.pptx
- 第九章 TMS320F28335外部接口.pptx
- 控制系统故障检测与容错控制-第1章-概述.pptx
- 控制系统故障检测与容错控制-第2章-基于观测器的故障诊断.pptx
- 控制系统故障检测与容错控制-第3章-基于参数估计的故障诊断.pptx
- 控制系统故障检测与容错控制-第10章-容错控制.pptx
- Matlab在制导控制系统设计中的应用实验- Matlab基础及科学计算.docx
- 河北盐山中学等校2025-2026学年上学期高三一模化学试卷(含解析).docx
- 河北正定中学2025-2026学年高一上学期期末考试物理试卷(含解析).docx
- 河北张家口市怀安县2025-2026学年第一学期期末教学综合评价八年级地理试卷(含解析).docx
- 河南安阳市殷都区2025-2026学年第一学期期末教学质量检测七年级地理试卷(含解析).docx
- 河南安阳市滑县2025一2026学年第一学期期末学业质量监测八年级地理试题(含解析).docx
- 河南安阳市林州市2025-2026学年上学期期末考试高一政治试题(含解析).docx
- 河南焦作市武陟县第一中学2025-2026学年高一上学期1月月考语文试卷(含解析).docx
- 河南济源市2025-2026学年上学期期末学业质量调研七年级历史试卷(含解析).docx
- PICC导管并发症的紧急处理与护理.pptx
- 河南鹤壁市2025-2026学年高二上学期期末考试生物试题(含解析).docx
原创力文档

文档评论(0)