how to convert image (like ave mpeg ) to dicom sc multiframe

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
joyli
Posts: 11
Joined: Thu, 2004-11-18, 08:16

how to convert image (like ave mpeg ) to dicom sc multiframe

#1 Post by joyli »

how to convert multiframe image (like ave mpeg ) to dicom sc multiframe imae by using dcmtk???

Marco Eichelberg
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 1437
Joined: Tue, 2004-11-02, 17:22
Location: Oldenburg, Germany
Contact:

#2 Post by Marco Eichelberg »

Well, lots of manual work :wink:
You will have to uncompress each frame, create a valid multi-frame PixelData element out of this and create all other attributes needed to make this a valid multiframe SC object according to part 3 of the DICOM standard.

joyli
Posts: 11
Joined: Thu, 2004-11-18, 08:16

most difficult question for me is ?

#3 Post by joyli »

tks a lot . now the most difficult question for me is how to create a valid multi-frame PixelData element , I write a bmp2dcm program by using dcmtk like

switch(lpbmpInfo->biBitCount)
{
case 8:
cond = dataset->putAndInsertUint8Array(DCM_PixelData, m_outimage, lpbmpInfo->biSizeImage);
if (cond.bad())
loginfo("Put DCM_PixelData8 faild \n");
break;
case 24:
cond = dataset->putAndInsertUint8Array(DCM_PixelData, m_outimage, lpbmpInfo->biSizeImage);
if (cond.bad())
loginfo("Put DCM_PixelData24 faild \n");
break;
default:
break;
}


what will be take place of DCM_PixelData in multiframe sc image by using dcmtk?

joyli
Posts: 11
Joined: Thu, 2004-11-18, 08:16

is it should be like....

#4 Post by joyli »

is it should be like

for (int i=0; i<iFrameNumber,i++)
{
dataset->putAndInsertUint8Array(DCM_PixelData, m_outimage, lpbmpInfo->biSizeImage);

dataset->insert (FFFE,E000)

}
then
add multi-frame moudle and other moudles (M)

fileformat.savefile()????????????

jayition
Posts: 18
Joined: Thu, 2005-04-21, 04:23
Location: China
Contact:

I know what it mean but can anyone tell me how to do this!

#5 Post by jayition »

I tried this code
dataset->insert (FFFE,E000)
,but it doesn't work , the insert funtion is
virtual OFCondition insert (DcmElement *elem, OFBool replaceOld=OFFalse, OFBool checkInsertOrder=OFFalse)
insert a new element into the list of elements maintained by this item.

but FFFE,E000 is not a Dcmelement* type

and I tried :
dataset->insertEmptyElement(DCM_Item);
it is'nt work too.
Can any one help me ?
thanks very much!
Love programming!
My Blog is:
http://pacs.coocn.org

jayition
Posts: 18
Joined: Thu, 2005-04-21, 04:23
Location: China
Contact:

#6 Post by jayition »

Can any body give sample code to create mutl frame dicom file? thanks!
Love programming!
My Blog is:
http://pacs.coocn.org

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 1 guest