|
·ÖÀർº½ |
 |
|
|
|
»ùÓÚDICOMµÄÊý¾Ý×éÖ¯¼°Ò½Ñ§Í¼ÏñÐòÁÐÌáÈ¡·½·¨Ñо¿ |
|
×ÊÔ´´óС£º163.71 KB |
×ÊÔ´ÀàÐÍ£ºÎĵµ |
ÏÂÔØ»ý·Ö£º 0 |
|
|
|
×ÊÔ´½éÉÜ |
|
»ùÓÚDICOM µÄÊý¾Ý×éÖ¯¼°Ò½Ñ§
ͼÏñÐòÁÐÌáÈ¡·½·¨Ñо¿
Àî׿³ÂÅôÎâÁá´ï
(¹ú·À¿Æ¼¼´óѧ¶àýÌåÑо¿¿ª·¢ÖÐÐÄ£¬³¤É³410073)
E¡ª¡ªmail£ºlizomail@yeah£¬net
ÇÜ ÒªDICOM±ê×¼ÊÇÓ¦ÓÃÔÚPACSϵͳÖеÄÒ»¸öҽѧÊý×Ö³ÉÏñºÍͨÐŵĹú¼Ê±ê×¼£¬ÎÄÕÂÔÚÉîÈëÑо¿DICOM±ê×¼µÄ»ù
´¡ÉÏ£¬½áºÏÔÚʵ¼ÊÖпª·¢PACSϵͳµÄÏà¹Ø¾Ñ飬¶Ô»ùÓÚDICOM µÄÊý¾Ý×éÖ¯²ã´Î½øÐÐÁ˽ÏΪÉîÈëµÄ·ÖÎö£¬¸ø³öÁËÌáÈ¡
DICOMÎļþÖÐÏà¹ØÊôÐÔÐÅÏ¢²¢½âÎö·ÖÀëͼÏñÊý¾ÝÐÅÏ¢µÄÒ»°ã·½·¨£¬×îÖÕÌáÈ¡³ö»ùÓÚDICOM±ê×¼µÄҽѧͼÏñÐòÁС£
¹Ø¼ü´ÊPACS DICOM ҽѧͼÏñ
ÎÄÕ±àºÅ1002¡ª8331Ò»(2005)08-0221-03 ÎÄÏ×±êʶÂëA ÖÐͼ·ÖÀàºÅTP391
Data Organizing and Medical Image Series Generating
Based on DICOM Standard
Li Zhuo Chen Peng Wu Lingda
(Multimedia R&D Center of National University of Defense Technology£¬Changsha 410073)
Abstract£ºDICOM standard that applied to PACS System is an International Standard of Digital Imaging and Communications
in Medicine£¬On the basis of thoroughly researching the DICOM standard an d integrating the experience of practice
in developing PACS system£¬this paper firs@ ana1) zes the structure of DICOM data layer organization£»Secondly
through processing related attributes data and image data which resolved from the DICOM files£¬this paper presents the
method of generating medical image series on the basis of DICOM standard£®
Keywords£ºPACS£¬DICOM£¬medical image
1 ÒýÑÔ
PACS(Picture Archiving and Communication Systems£¬Ò½
ѧӰÏñ´æµµÓëͨÐÅϵͳ)ÊǽüÄêÀ´Ëæ×ÅÊý×Ö³ÉÏñ¼¼Êõ¡¢¼ÆËã»ú
¼¼ÊõºÍÍøÂç¼¼ÊõµÄ½ø²½¶øÑ¸ËÙ·¢Õ¹ÆðÀ´µÄ¡¢Ö¼ÔÚÈ«Ãæ½â¾öҽѧ
ͼÏñµÄ»ñÈ¡¡¢ÏÔʾ¡¢´æÖü¡¢´«Ëͺ͹ÜÀíµÄ×ÛºÏϵͳ¡£¶øDIC0MÊÇ
Digital Imaging and Communications in MedicineµÄÓ¢ÎÄËõд£¬
¼´Ò½Ñ§Êý×Ö³ÉÏñºÍͨÐűê×¼¡¾ £¬ËüÊÇPACSϵͳÖÐÓ¦ÓõÄÖ÷Òª
±ê×¼£¬ÔÚPACSϵͳÖÐҽѧͼÏñµÄ´«ÊäºÍ´æ´¢¶¼ÊÇ×ñÑ
DIC0M±ê×¼µÄ¡£ÔÚDICOM±ê×¼ÖÐÏêϸ¶¨ÒåÁËÓ°Ïñ¼°ÆäÏà¹ØÐÅ
Ï¢µÄ×é³É¸ñʽ¡¢´«Êä½»»»ºÍ´æ´¢·½·¨£¬ÀûÓÃÕâ¸ö±ê×¼¡£ÈËÃÇ¿ÉÒÔ
½ÓÊÕÓ°ÏñÉ豸ÖÐÊä³öµÄÊý×Ö»¯Ó°ÏñÊý¾Ý141£¬Í¬Ê±¸÷Ò½ÔºÖ®¼ä
µÄPACSÒ²¿ÉÒÔÀûÓÃDIC0M±ê×¼À´¹²ÏíÊý×Ö»¯Ó°ÏñÊý¾Ý¡£
ÔÚPACSϵͳµÄ¿ª·¢¹ý³ÌÖУ¬Ò»·½ÃæÐèÒª¶ÔDICOM¸ñʽ
µÄҽѧͼÏñ¼°Ïà¹ØÐÅÏ¢Êý¾Ý½øÐÐ×éÖ¯ºÍ¹ÜÀí£¬·½±ãÒ½ÉúµÄ²éѯ
ºÍ¼ìË÷£»ÁíÒ»·½Ã棬ÐèÒª¶ÔҽѧͼÏñ½øÐзÖÎöºÍ´¦Àí£¬ÎªÒ½ÉúÌá
¹©¸¨ÖúÕï¶ÏµÄÊֶΡ£Òò´ËÔÚPACSϵͳ¿ª·¢¹ý³ÌÖеÄǰÌṤ×÷
¾ÍÊǶÔDICOM¸ñʽµÄҽѧͼÏñ½øÐнâÎö£¬ÌáÈ¡³öÏà¹ØÒ½Ñ§Í¼
ÏñÐÅÏ¢£¬²¢½«ËüÃÇ»¹Ô³ÉΪһ°ã¸ñʽµÄͼÏñÐòÁС£ÒÔÀûÓÚͼÏñ
µÄÏÔʾÒÔ¼°Ïà¹ØµÄºó´¦Àí¹¤×÷¡£
2 DICOMÊý¾ÝµÄ×éÖ¯²ã´Î·ÖÎö
ÔÚPACSϵͳµÄ¿ª·¢ÖС£ÎªÁËÂú×ãÒ½Éú²éѯºÍ¼ìË÷²¡ÈËÒ½
ѧͼÏñÐòÁеÄÐèÒª£¬Ê×ÏÈÒª¶ÔDICOMÊý¾Ý°´ÕÕÒ»¶¨µÄ×éÖ¯²ã
´ÎÀ´½øÐл®·Ö£¬´Ó¶ø¸üºÃµØ¶ÔDIC0MÊý¾Ý½øÐйÜÀí£¬ÁíÒ»·½Ãæ
Ò²¿ÉÒÔ½ÏΪ±ã½ÝµØÌáȡҽÉúËùÐèÒªµÄ²¡ÈËҽѧͼÏñÐòÁС£
DIC0MÊý¾ÝµÄ×éÖ¯Ö÷Òª·ÖΪËĸö²ã´Î£º»¼Õß(Patient)¡¢ÑÐ
¾¿(Study)¡¢ÏµÁÐ(Series)ºÍͼÏñ(Image)¡£ÕâËĸö²ã´Î·Ö±ð¶ÔÓ¦
ÁËÏà¹ØÀàÐÍÐÅÏ¢µÄÉú³É½×¶ÎºÍ²»Í¬À´Ô´¡£
ȦI DICOMÊý¾ÝµÄ×éÖ¯ÂŴλ®·Ö
²¡È˲ã´ÎλÓÚÕû¸öDICOM Êý¾Ý×éÖ¯²ã´ÎµÄ×î¶¥²ã£¬DI£®
COMÊý¾ÝÊÇÒÔÒ»¸ö¸öµÄ²¡ÈËΪµ¥¸öÄ£¿éÀ´½øÐÐ×éÖ¯¹ÜÀíµÄ¡£
Ò»¸ö²¡ÈË¿ÉÒÔ°üº¬Ò»¸ö»ò¶à¸öÑо¿¡£Ò»¸öÑо¿¿ÉÒÔ°üº¬Ò»¸ö»ò
¶à¸öÐòÁС£¶øÐòÁÐÓÖ°üº¬ÁËÒ»¸ö»ò¶à¸öͼÏñ¡£
(1)²¡È˲ã´Î
×÷Õß¼ò½é£ºÀî׿¡£²©Ê¿Éú£¬Ñо¿·½ÏòΪ¶àýÌåÐÅϢϵͳ¡£ÎâÁá´ï£¬½ÌÊÚ£¬²©µ¼£¬Ö÷ÒªÑо¿·½ÏòΪ¶àýÌåϵͳ¼°ÆäÓ¦Óá£
¼ÆËã»ú¹¤³ÌÓëÓ¦ÓÃ2005£®8 221
άÆÕ×ÊѶ http://www.cqvip.com
²¡È˲ã´Î°üº¬ÊôÓÚij¸öÑо¿µÄ²¡È˱êʶºÍͳ¼ÆÐÅÏ¢£¬Ò»¸ö
²¡ÈË¿ÉÄÜÓÉÓÚÆäËü»òÒÔǰµÄ¼ì²é¶øÓжà¸öÑо¿£¬²¡È˲ã´ÎÊÇ×î
¸ß²ã´Î¡£
(2)Ñо¿²ã´Î
Ñо¿²ã´ÎÊÇÔÚÐÅϢģÐÍÖÐ×îÖØÒªµÄ²ã´Î£¬ÔÚÕâ¸ö²ã´ÎÖÐÖ÷
Òª¶¨ÒåÁËÔÚij¸ö²¡ÈËÉíÉÏÖ´ÐеÄҽѧÑо¿µÄÒ»Ð©ÌØÐÔ¡£Ò»¸öÑÐ
¾¿ÊÇij¸öÌØ¶¨ÀàÐͼì²éµÄ½á¹û£¬Ëü¿ÉÒÔ°üº¬ÓɶàÖÖҽѧӰÏñÉè
±¸Éú³ÉµÄDICOMÊý¾ÝʵÀý£¬ÔÚÒ»¸ö·ÅÉä¿ÆËùÓл¶¼Î§ÈÆ×Å
Ñо¿Õâ¸ö²ã´Î½øÐд¦Àí¡£´ËÍ⣬һ¸öÑо¿ÓÖ¿ÉÒÔ°üÀ¨Ò»¸ö»ò¶à
¸öҽѧͼÏñÐòÁС£
(3)ÐòÁвã´Î
ÐòÁвã´Î±êʶÁËÉú³ÉͼÏñµÄÐÎ̬ÀàÐÍ¡¢ÐòÁÐÉú³ÉµÄÈÕÆÚ¡¢
¼ì²éÀàÐ͵Äϸ½ÚºÍʹÓõÄÉ豸µÈµÈ£¬ÐòÁÐÊÇÀ´×ÔͬһҽѧӰÏñ
É豸µÄµ¥Ò»ÐÎ̬ÓйØÍ¼Ïñ¼°ÆäÏà¹ØÐÅÏ¢µÄ¼¯ºÏ£¬Ò»¸öÐòÁпÉÒÔ
°üÀ¨Ò»Ö¡»ò¶à֡ͼÏñ¡£
(4)ͼÏñ²ã´Î
ͼÏñ²ã´ÎÊÇÐÅϢģÐ͵Ä×îµÍ²ã´Î£¬ËüÖ÷Òª¶¨ÒåÁËÃèÊöͼÏñ
ÏñËØÊý¾ÝµÄһЩÊôÐÔ¡£¶ÔÓÚÒ»¸öµ¥¸öDIC0MÎļþËù°üº¬µÄÏñ
ËØÊý¾ÝÀ´Ëµ£¬¿ÉÒÔ°üº¬ÓÐÒ»Ö¡¡¢Á½Ö¡ºÍ¶àÖ¡ÏñËØÊý¾Ý¡£¶à֡ͼÏñ
µÄµÄÖ¡Ö®¼äÊÇ˳ÐòÅÅÁе쬲¢ÏíÓÐһЩ¹«¹²µÄÊôÐÔ£¬Ö»ÓÐÉÙÊý
һЩÊôÐÔËæ×ÅÖ¡Ö®¼äµÄ±ä»¯¶ø±ä»¯£¬ÀýÈçʱ¼ä¡¢½Ç¶ÈÎ»ÒÆºÍÇÐ
ƬÔöÁ¿µÈÊôÐÔ¡£¶à֡ͼÏñÖеĹ«¹²ÊôÐÔ¿ÉÒÔͨ¹ý²éÔĶà֡ͼÏñ
µÄµÚÒ»Ö¡À´µÃµ½¡£
ÎÄÕÂÔÚÏà¹ØPACSÓ¦ÓÃÈí¼þµÄ¿ª·¢ÖÐÓ¦ÓÃÁËÒÔÉ϶ÔDI¡ª
COMÊý¾Ý×éÖ¯²ã´Î»®·ÖµÄ¸ÅÄ²¢ÊÕµ½Á˽ϺõĹÜÀíЧ¹û(Èç
ͼ2¡¯Ëùʾ)¡£DICOMÊý¾Ý»ù±¾ÉÏÊǰ´ÕÕ²¡ÈËÒ»Ñо¿Ò»ÐòÁÐһͼÏñ
µÄ²ã´ÎÀ´½øÐÐ×éÖ¯¹ÜÀíµÄ£¬Ïà¹ØµÄÊý¾Ýͨ¹ýÒ»¸öTreeView¿Ø
¼þ²ã²ãÕ¹¿ª£¬×îµ×²ãΪÐòÁв㣬Ȼºóͨ¹ýÓû§Ñ¡Ôñij¡«ÐòÁжø
ÔØÈëÕâÒ»ÐòÁеÄËùÓÐͼÏñ½øÐÐÏÔʾ»ò¹©ºó´¦ÀíʹÓá£
Ȧ2 ²ã´ÎÕ¹¿ªDICOMÊý¾ÝµÄ½çÃæÊ¾Àý
3 DICOM ҽѧͼÏñÐòÁеÄÌáÈ¡
DICOMҽѧͼÏñÐòÁеÄÌáÈ¡¿ÉÒÔ·ÖΪÁ½¸ö²½Ö裺Ê×ÏȶÔ
DICOMÎļþ½øÐнâÎö£¬´ÓDICOMÎļþÖÐÌáÈ¡±ØÒªµÄһЩÊôÐÔ
ÐÅÏ¢£¬ÈçDICOM Îļþ´«Êä¡¢²¡ÈË¡¢Ó°ÏñÉ豸ºÍͼÏñÏà¹ØµÄÊôÐÔ
ÐÅÏ¢£¬ÕâЩÐÅÏ¢»ù±¾ÊôÓÚÎı¾ÐÅÏ¢¡£ÕâЩÊôÐÔÐÅÏ¢²»½öÊÇÏÂÒ»
²½ÌáÈ¡DICOMÎļþÖÐͼÏñÊý¾ÝµÄ»ù´¡±£Ö¤£¬¶øÇÒ¶ÔDICOMͼ
ÏñÊý¾ÝµÄ¼ìË÷ºÍ¹ÜÀíÓÐ×ÅÖØÒªµÄ×÷Óã»Æä´Î£¬ÒÀ¾ÝÇ°ÃæÌáÈ¡³ö
222 2005£®8¼ÆËã»ú¹¤³ÌÓëÓ¦ÓÃ
µÄÏà¹ØÊôÐÔÐÅÏ¢£¬¶Ô·â×°µÄͼÏñÊý¾Ý½øÐнâÂ룬»¹ÔΪһ°ãλ
ͼ¸ñʽ£¬²¢ÐγÉDICOM ͼÏñÐòÁС£
3£®1 DICOMÏà¹ØÊôÐÔÐÅÏ¢µÄÌáÈ¡
¶ÔDIC0MÊý¾Ý¹ÜÀíµÄ²Ù×÷ʵ¼ÊÉϾÍÊǶÔDICOMÎļþµÄ
²Ù×÷¡£DICOMÎļþÌṩÁËÒ»ÖÖ·â×°·½Ê½£¬Ëü½«DICOMÐÅÏ¢¶Ô
Ïó¶¨ÒåIOD(Information Object Definition)ÓëÏà¹Ø·þÎñ²Ù×÷Ïà
½áºÏµÄÒ»¸ö·þÎñ¶ÔÏó×éºÏSOP(Service Object Pair)ʵÀýÒÔÊý
¾Ý¼¯µÄÐÎʽ·â×°ÔÚÒ»¸öÎļþÖС¾l' 4l¡£DICOMÎļþÖ÷ÒªÓÉÁ½¸ö²¿
·Ö×é³É£¬Ç°Ò»²¿·ÖÊÇÎļþÔªÐÅÏ¢£¬ºóÒ»²¿·ÖÊÇ·â×°µÄÊý¾Ý¼¯¡£
¶ÔÓÚÎļþÔªÐÅÏ¢À´Ëµ£¬ËüÖ÷Òª°üº¬Á˶Էâ×°µÄÊý¾Ý¼¯µÄÒ»
Щʶ±ðÐÅÏ¢¡£Õâ¸öÎļþÍ·Ê×ÏÈÓÉ128×Ö½ÚµÄÎļþÐòÑÔ¿ªÊ¼£¬½ô
Ëæ×ŵÄÊÇÄÚÈÝΪ¡°DICM¡±µÄ4¸ö×Ö½ÚµÄǰ׺£¬Í¨³£Õâ¸öǰ׺ÓÃ
À´ÅбðÎļþÊÇ·ñΪDICOMÎļþ¡£Ç°×ºÖ®ºóµÄÊÇÆäËüһЩÎļþ
ÔªÔªËØÐÅÏ¢¡£
¶ÔÓÚ·â×°µÄÊý¾Ý¼¯À´Ëµ£¬ËüÊÇÓÉÒ»×é°´ÕÕ±êÇ©´óС˳ÐòÅÅ
ÁеÄÊý¾ÝÔªËØ¹²Í¬×é³ÉµÄ¡£ÕâЩÊý¾ÝÔªËØ°´ÕÕËùÃèÊöµÄÄÚÈÝÖ÷
Òª¿ÉÒÔ·ÖΪÁ½´ó²¿·Ö£ºÒ»²¿·ÖÊÇÓÃÀ´ÃèÊöÖîÈçDICOMÎļþ´«
Êä¡¢²¡ÈË¡¢Ó°ÏñÉ豸ºÍͼÏñÏà¹ØµÄÊôÐÔÐÅÏ¢£¬ÕâЩÊôÐÔÐÅÏ¢¶àΪ
Îı¾ÐÅÏ¢£»ÁíÒ»²¿·ÖÊÇÓÃÀ´´æ´¢DICOMÎļþÖеÄͼÏñÊý¾Ý£¬Õâ
ЩÊý¾ÝÔªËØÎ»ÓÚÕû¸öÊý¾ÝÔªËØÐòÁеÄ×îºó¡£Í¼3ËùʾµÄÊÇÊý¾Ý
¼¯µÄ±àÂë´æ´¢·½Ê½¡£
Êý¾Ý
£® ÙºÊä·½Ïò¡ª £®
ÐÉ̵Ĵ«ÊäÓï}È¥
ͼ3 DlICOMÊý¾Ý¼¯ºÍÊý¾ÝÔªËØ½á¹¹
Êý¾ÝÔªËØ±êÇ©ÓÉ×éºÅºÍÔªËØºÅ¹²Í¬×é³É£¬ÓÃÀ´Î¨Ò»±êʶÊý
¾ÝÔªËØ¡£ÔÚ»ñÈ¡ÁËÊý¾ÝÔªËØ±êǩ֮ºó£¬¾Í¿ÉÒÔÔÚÏàÓ¦µÄÊý¾Ý×Ö
µäÖвéÕÒ±êÇ©Ëù¶ÔÓ¦µÄÊý¾ÝÔªËØÃû³ÆºÍVRÖµ£¬Èç¹û´ËÊý¾ÝÔª
ËØº¬ÓÐVRÓò£¬ÔòÓôËVRÖµ¸²¸Ç´ÓÊý¾Ý×ÖµäÖлñÈ¡µÄVRÖµ£»
Öµ³¤¶ÈÓòÖ¸¶¨ÁËÖµÓòµÄ³¤¶È£¬Öµ³¤¶ÈÓò±¾ÉíµÄ³¤¶ÈΪ16»ò32
±ÈÌØ£¬ÕâÈ¡¾öÓÚVRÊÇÒþʽ»¹ÊÇÏÔʽ£»×îºóͨ¹ýÒѵõ½µÄVR
ÖµºÍÖµ³¤¶È£¬¾Í¿ÉÒÔ´ÓÖµÓòÖеõ½´ËÊý¾ÝÔªËØµÄÖµ¡£
ÎÄÕÂÔÚÏà¹ØPACSÈí¼þµÄ¾ßÌåʵÏÖÖУ¬·Ö±ð¶¨ÒåÁËÁ½¸ö»ù
ÀàCDcmElementºÍCDcmDataSet£¬ÔÚʵ¼ÊÓ¦ÓÃÖпÉÒÔ¸ù¾Ý²»Í¬
Çé¿öÔÚÕâÁ½¸ö»ùÀàµÄ»ù´¡ÉϽøÐм̳У¬ÕâÑù¾Í¿ÉÒÔÁé»îµØ¶Ô
DIC0MÊý¾Ý¼¯ÖеÄÊý¾ÝÔªËØ½øÐÐÏà¹Ø²Ù×÷¡£ÕâÁ½¸ö»ùÀàËù°ü
º¬µÄһЩÖ÷Òªº¯ÊýµÄ¶¨ÒåÈçÏ£º
Class CDcmElement{
Uintl6 getGTag()£»£¯£¯»ñÈ¡×é±êÇ©
Uintl6 getETag()£»£¯£¯»ñÈ¡ÔªËØ±êÇ©
Void ReadVR()£»£¯£¯»ñȡֵ±íʾֵ
Uint32 getLength()£»£¯£¯»ñȡֵ³¤¶È
Void ReadValue()£»£¯£¯»ñÈ¡ÔªËØÖµ
Void SetValue()£»£¯£¯ÉèÖÃÔªËØÖµ
⋯ ⋯ )
Class CDcmDataSet{
CDcmElement FindElement()£»£¯ |
|
ÏÂÔØµØÖ· |
|
|
|
|
|