彩票走势图

LEADTOOLS医疗存储服务器自定义数据库系列教程(九)— 指定C FIND Rsp DICOM元素

转帖|使用教程|编辑:杨鹏连|2021-02-01 09:58:00.163|阅读 207 次

概述:这是本系列的第九篇文章,此处介绍了LEAD医学存储服务器数据库如何指定C FIND Rsp DICOM元素。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

LEADTOOLS Recognition Imaging SDK是精选的LEADTOOLS SDK功能集,旨在在企业级文档自动化解决方案中构建端到端文档成像应用程序,这些解决方案需要OCR,MICR,OMR,条形码,表单识别和处理,PDF,打印捕获 ,档案,注释和图像查看功能。 这套功能强大的工具利用LEAD屡获殊荣的图像处理技术,智能识别可用于识别和提取任何类型的扫描或传真形式图像数据的文档功能。

点击下载LEADTOOLS Recognition Imaging SDK试用版

概述

LEADTOOLS存储服务管理器DICOM侦听服务通过一个或多个C-FIND响应来响应收到的C-FIND请求。C-FIND响应包含请求中指定的DICOM属性。

要使用自定义数据库模式,必须定义配置文件,使用DICOM侦听服务使用适当的属性填充C-FIND响应,并使用数据库中的相应数据设置属性值。

LEAD Storage Server Manager附带的默认配置文件称为QueryIOD.xml。默认配置定义为返回数据库的属性和属性序列。对于教程数据库,我们不返回项目序列。

QueryIOD.xml的结构如下。它由<patientLevel>,<studyLevel>,<seriesLevel>和<imageLevel>元素组成,每个元素都包含一个或多个&lt;element>元素。

<query> 
<patientLevel> 
<element>...</element> 
<element>...</element> 
... 
</patientLevel> 

<studyLevel> 
<element>...</element> 
<element>...</element> 
... 
</ studyLevel > 

< seriesLevel > 
<element>...</element> 
<element>...</element> 
... 
</ seriesLevel > 

<imageLevel> 
<element>...</element> 
<element>...</element> 
... 
</ imageLevel > 
</query>
每个<element>元素对应于C-FIND请求中的属性,并提供数据库中相应值的映射。

置于DICOM元素的患者ID(0010,0010)映射到相应的表名(MyPatientTable)和列(PatientName)。

<element tag="(0010,0010)" 
     tagName="PatientName" 
    vr="PN" 
    minVM="1" 
    maxVM="1" 
    vmDivider="1" 
    keyType="Required" 
    matchingType="WildCard" 
    tableName="MyPatientTable"  
    matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
    columnsName="PatientName" />
MyQueryIOD.xml的全部内容如下:

<?xml version="1.0" encoding="utf-8" ?> 
<query> 
   <patientLevel> 
      <element tag="(0010,0010)" 
                tagName="PatientName" 
                vr="PN" 
                minVM="1" 
                maxVM="1" 
                vmDivider="1" 
                keyType="Required" 
                matchingType="WildCard" 
                tableName="MyPatientTable" 
                matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
                columnsName="PatientName" /> 
      <element tag="(0010,0020)" 
               tagName="PatientID" 
               vr="LO" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Unique" 
               matchingType="SingleValue" 
               tableName="MyPatientTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
               columnsName="PatientIdentification" /> 
      <element tag="(0010,0030)" 
               tagName="PatientBirthDate" 
               vr="DA" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="Range" 
               tableName="MyPatientTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
               columnsName="PatientBirthday" /> 
      <element tag="(0010,0040)" 
               tagName="PatientSex" 
               vr="CS" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="SingleValue" 
               tableName="MyPatientTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
               columnsName="PatientSex" /> 
      <element tag="(0010,4000)" 
               tagName="PatientComments" 
               vr="LT" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="NotApplicable" 
               tableName="MyPatientTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyPatient,My.Medical.Storage.DataAccessLayer" 
               columnsName="PatientComments" /> 
   </patientLevel> 
   <studyLevel> 
      <element tag="(0008,0020)" 
               tagName="StudyDate" 
               vr="DA" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="Range" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyStudyDate" /> 
      <element tag="(0008,0050)" 
               tagName="AccessionNumber" 
               vr="SH" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="SingleValue" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyAccessionNumber" /> 
      <element tag="(0008,0061)" 
               tagName="ModalitiesInStudy" 
               vr="CS" 
               minVM="1" 
               maxVM="-1" 
               vmDivider="1" 
               vmDistinct="true" 
               keyType="Optional" 
               matchingType="SingleValue" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesModality" /> 
      <element tag="(0008,0062)" 
               tagName="SOPClassesInStudy" 
               vr="UI" 
               minVM="1" 
               maxVM="-1" 
               vmDivider="1" 
               vmDistinct="true" 
               keyType="Optional" 
               matchingType="ListOfUID" 
               tableName="MyInstanceTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.MatchingParameters.Image,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageUniqueSOPClassUID" /> 
      <element tag="(0008,0090)" 
               tagName="ReferringPhysiciansName" 
               vr="PN" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="SingleValue" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyReferringPhysiciansName" /> 
      <element tag="(0008,1030)" 
               tagName="StudyDescription" 
               vr="LO" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="NotApplicable" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyStudyDescription" /> 
     <element tag="(0020,0010)" 
               tagName="StudyID" 
               vr="SH" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="SingleValue" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyStudyId" /> 
      <element tag="(0020,000D)" 
               tagName="StudyInstanceUID" 
               vr="UI" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Unique" 
               matchingType="ListOfUID" 
               tableName="MyStudyTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyStudy,My.Medical.Storage.DataAccessLayer" 
               columnsName="StudyStudyInstanceUID" /> 
   </studyLevel> 
   <seriesLevel> 
      <element tag="(0008,0060)" 
               tagName="Modality" 
               vr="CS" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="SingleValue" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesModality" /> 
      <element tag="(0008,103E)" 
               tagName="SeriesDescription" 
               vr="LO" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="SingleValue" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesSeriesDescription" /> 
      <element tag="(0008,0021)" 
               tagName="SeriesDate" 
               vr="DA" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="Range" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesSeriesDate" /> 
      <element tag="(0018,0015)" 
               tagName="BodyPartExamined" 
               vr="CS" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="Range" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesBodyPartExamined" /> 
      <element tag="(0020,0011)" 
               tagName="SeriesNumber" 
               vr="IS" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="SingleValue" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesSeriesNumber" /> 
      <element tag="(0020,000E)" 
               tagName="SeriesInstanceUID" 
               vr="UI" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="ListOfUID" 
               tableName="MySeriesTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MySeries,My.Medical.Storage.DataAccessLayer" 
               columnsName="SeriesSeriesInstanceUID" /> 
   </seriesLevel> 
   <imageLevel> 
      <element tag="(0020,0013)" 
               tagName="InstanceNumber" 
               vr="IS" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="SingleValue" 
               tableName="MyInstanceTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageImageNumber" /> 
      <element tag="(0008,0016)" 
               tagName="SOPClassUID" 
               vr="UI" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="ListOfUID" 
               tableName="MyInstanceTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageUniqueSOPClassUID" /> 
      <element tag="(0008,0018)" 
               tagName="SOPInstanceUID" 
               vr="UI" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Required" 
               matchingType="ListOfUID" 
               tableName="MyInstanceTable" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.Entities.MyInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="SOPInstanceUID" /> 
      <element tag="(0028,0010)" 
               tagName="Rows" 
               vr="US" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="NotApplicable" 
               tableName="ImageInstance" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.MatchingParameters.ImageInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageRows" /> 
      <element tag="(0028,0011)" 
               tagName="Columns" 
               vr="US" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="NotApplicable" 
               tableName="ImageInstance" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.MatchingParameters.ImageInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageColumns" /> 
      <element tag="(0028,0100)" 
               tagName="BitsAllocated" 
               vr="US" 
               minVM="1" 
               maxVM="1" 
               vmDivider="1" 
               keyType="Optional" 
               matchingType="NotApplicable" 
               tableName="ImageInstance" 
               matchingEntity="My.Medical.Storage.DataAccessLayer.MatchingParameters.ImageInstance,My.Medical.Storage.DataAccessLayer" 
               columnsName="ImageBitsAllocated" /> 
   </imageLevel> 
</query>
了解更多

这是本系列的第九篇文章,此处介绍了LEAD医学存储服务器数据库如何指定C FIND Rsp DICOM元素,我们将在《LEAD医疗存储服务器自定义数据库系列教程– DICOM侦听服务》系列的第十篇中文章中,着重介绍LEAD医用存储服务器数据库如何创建DICOM侦听服务。

试用版下载>>>

LEADTOOLS 使用教程>>>


想要购买LEADTOOLS正版授权,或了解更多产品信息请点击


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
LEADTOOLS Imaging Pro Developer Toolkit

20多年的老牌图像处理控件,支持TWAIN扫描、200多种图像效果、150多种图像格式…

LEADTOOLS Document Suite Developer Toolkit

LEADTOOLS Document Imaging Suite SDK是LEADTOOLS SDK中各种特点的精选组合,这套强大的工具利用了LEAD行业领先的图像处理技术来智能地识别文档的特征,而根据文档的特征可以识别扫描的或传真的任何类型的表格图像。

LEADTOOLS Document Imaging Developer Toolkit

多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。

LEADTOOLS Medical Developer Toolkit

LEADTOOLS Medical Imaging是一款医疗成像控件,包含了一些精心挑选的、经过优化的特性,可以满足医疗成像应用程序开发的特殊需要。

LEADTOOLS Medical Imaging Suite Developer Toolkit

LEADTOOLS Medical Imaging Suite帮您开发功能强大的PACS和医学成像应用程序

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP