Este é o comando gdcmraw que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
gdcmraw - Extrair campo de valor do elemento de dados.
SINOPSE
gdcmraw [opções] arquivo de entrada de arquivo de saída
DESCRIÇÃO
O gdcmraw ferramenta é usada principalmente para fins de desenvolvimento. É usado para extrair um específico
campo binário de um DataSet DICOM.
PARÂMETROS
arquivo no arquivo de entrada DICOM
nome do arquivo de saída de saída
OPÇÕES
-i --input Nome do arquivo de entrada
-o --output Nome do arquivo de saída
-t --tag Especifica a tag da qual extrair o valor.
ESPECÍFICO OPÇÕES
-S --split-frags Divide fragmentos em vários arquivos.
-p --pattern Especifique o padrão de arquivo final (veja split-frags).
-P --pixel-data Dados de pixel à direita de 0.
SUPORTE OPÇÕES
-h --ajuda
imprima este texto de ajuda e saia
-v --versão
imprimir informações da versão e sair
-V --verboso
modo detalhado (aviso + erro).
-W - advertência
modo de aviso, imprimir informações de aviso
-E --erro
modo de erro, imprimir informações de erro
-D --depurar
modo de depuração, imprimir informações de depuração
TÍPICA USO
Copiar Atributo Valor para lima
Isso extrairá o valor no Tag (0025,101b):
$ gdcmraw -i GE_MR_0025xx1bProtocolDataBlock.dcm -t 25,101b -o pdb.raw
Extrair pixels Dados
Se você não especificar nenhuma tag, o elemento Pixel Data será o padrão. Então por exemplo
para obter os dados de pixel de uma imagem:
$ gdcmraw -i teste.acr -o teste.raw
Você pode então, por exemplo, calcular o md5sum desses dados de pixel (muito útil):
$ md5sum teste.raw
f845c8f283d39a0204c325654493ba53 test.raw
Encapsulado Sintaxe
Quando os dados de pixel são encapsulados, vários fragmentos podem ser usados para armazenar um único
imagem de fatia:
$ gdcmdump D_CLUNIE_CT1_J2KR.dcm
\ & ...
(7fe0,0010) OB # u / l, dados de 1 pixel
(fffe, e000) ?? [] # 0,1 Item
(fffe,e000) ?? ff\\4f\\ff\\51\\00\\29\\00\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\02\\00\\00\\00\\02\\00 # 65536,1 Item
(fffe,e000) ?? 2c\\b7\\ee\\68\\de\\e3\\93\\2d\\b3\\b8\\ba\\90\\7b\\42\\3e\\f8\\42\\16\\64\\88\\46\\30\\37\\d4\\50\\95\\9b\\b6\\a5\\c7\\38\\9b # 65536,1 Item
(fffe,e000) ?? 48\\3c\\03\\e8\\c4\\3f\\44\\e1\\8a\\5c\\73\\3b\\02\\0a\\ad\\a5\\8f\\e4\\0c\\81\\76\\a2\\d7\\1b\\7f\\b7\\cd\\bc\\30\\c6\\6a\\6a # 43308,1 Item
(fffe, e0dd) 0
Para criar uma imagem J2K a partir dele, precisamos extrair cada fragmento e
concatená-los:
$ gdcmraw -i D_CLUNIE_CT1_J2KR.dcm -o D_CLUNIE_CT1_J2KR.j2k
Este é um arquivo J2K válido, usando o pacote de software Kakadu:
$ kdu_expand -i D_CLUNIE_CT1_J2KR.j2k -o D_CLUNIE_CT1_J2KR.tiff -registro D_CLUNIE_CT1_J2KR.txt
$ gato D_CLUNIE_CT1_J2KR.txt
Sprofile = PROFILE2
Scap = não
Sextensões = 0
Tamanho = {512,512}
Sorigin = {0,0}
Stiles = {512,512}
Stile_origin = {0,0}
Scomponentes = 1
Sinalizado = sim
Sprecision = 16
Amostragem S = {1,1}
Sdims = {512,512}
Cycc = no
Cmct = 0
Clayers = 1
Cuse_sop = não
Cuse_eph = no
Corder = LRCP
Calign_blk_last = {não, não}
Manilhas = 5
Cads = 0
Cdfs = 0
Cdecomp = B (-: - :-)
Creversível = sim
Ckernels = W5X3
Catk = 0
Cuse_precincts = no
Cblk = {64,64}
Cmodes = 0
Qguard = 1
Qabs_ranges = 18,19,19,20,19,19,20,19,19,20,19,19,20,19,19,20
>> Novos atributos para o bloco 0:
Extrair fragmentos as solteiro lima
Às vezes, cada fragmento é, na verdade, uma única fatia, então não precisaríamos concatenar
eles:
$ gdcmdump00191113.dcm
\ & ...
(7fe0,0010) OB # u / l, dados de 1 pixel
(fffe,e000) ?? 00\\00\\00\\00\\6b\\38\\01\\00\\10\\77\\02\\00\\37\\b6\\03\\00\\a7\\f4\\04\\00 # 20,1 Item
(fffe,e000) ?? ff\\d8\\ff\\c3\\00\\0b\\08\\02\\00\\02\\00\\01\\00\\11\\00\\ff\\c4\\00\\1b\\00\\01\\01\\01\\01\\01\\01\\01\\01\\00\\00\\00\\00 # 79970,1 Item
(fffe,e000) ?? ff\\d8\\ff\\c3\\00\\0b\\08\\02\\00\\02\\00\\01\\00\\11\\00\\ff\\c4\\00\\1b\\00\\01\\01\\01\\01\\01\\01\\01\\01\\00\\00\\00\\00 # 81564,1 Item
(fffe,e000) ?? ff\\d8\\ff\\c3\\00\\0b\\08\\02\\00\\02\\00\\01\\00\\11\\00\\ff\\c4\\00\\1b\\00\\01\\01\\01\\01\\01\\01\\01\\01\\00\\00\\00\\00 # 81694,1 Item
(fffe,e000) ?? ff\\d8\\ff\\c3\\00\\0b\\08\\02\\00\\02\\00\\01\\00\\11\\00\\ff\\c4\\00\\1b\\00\\01\\01\\01\\01\\01\\01\\01\\01\\00\\00\\00\\00 # 81511 (81512),1 Item
(fffe, e0dd) 0
Vamos tentar extrair esses 4 jpeg sem perdas individuais individualmente:
$ gdcmraw --split-frags -i 00191113.dcm -o jpeg --pattern% 02d.ljpeg
Isso produzirá 4 arquivos:
-rw-r - r-- 1 mathieu mathieu 81512 2008-08-08 22:10 jpeg03.ljpeg
-rw-r - r-- 1 mathieu mathieu 81694 2008-08-08 22:10 jpeg02.ljpeg
-rw-r - r-- 1 mathieu mathieu 81564 2008-08-08 22:10 jpeg01.ljpeg
-rw-r - r-- 1 mathieu mathieu 79970 2008-08-08 22:10 jpeg00.ljpeg
NOTA DE RODAPÉ SOBRE NÓS JPEG ARQUIVOS
É um mal-entendido comum intercambiar 'JPEG 8bits com perdas' por simplesmente arquivo JPEG.
A especificação JPEG é muito mais ampla do que simplesmente o arquivo 8bits comum com perdas (como encontrado
na internet).
Você pode ter:
· JPEG com perda de 8 bits
· JPEG com perda de 12 bits
· JPEG sem perdas 2-16 bits
Isso é o que está definido em ITU-T T.81, ISO / IEC IS 10918-1.
Use gdcmraw online usando serviços onworks.net
