이상한 질문이 있지만, dicom 파일의 태그를 읽을 수 없을 때 오류를 처리하기위한 테스트를하고 있습니다.dicom 파일의 헤더를 읽을 수 없게 만드는 방법
불행히도 손상된 dicom을 사용할 수 없습니다.
특히, 파일에 잘못 인코딩 된 텍스트 태그 또는 잘못된 숫자 데이터 태그를 적용하여 파이썬의 pydicom 패키지에서 읽을 수없는 방법을 조언 할 수 있습니까?
이상한 질문이 있지만, dicom 파일의 태그를 읽을 수 없을 때 오류를 처리하기위한 테스트를하고 있습니다.dicom 파일의 헤더를 읽을 수 없게 만드는 방법
불행히도 손상된 dicom을 사용할 수 없습니다.
특히, 파일에 잘못 인코딩 된 텍스트 태그 또는 잘못된 숫자 데이터 태그를 적용하여 파이썬의 pydicom 패키지에서 읽을 수없는 방법을 조언 할 수 있습니까?
DCMTK에서 dcmodify 도구를 살펴볼 수 있습니다. 속성을 삽입, 수정 및 삭제하는 데 사용할 수 있습니다. 커맨드 라인을 통해 유효하지 않은 속성 값을 지정할 수는 없겠지만 소스 코드를 수정하여 (값 표현에 따라 최대 길이를 초과하는 속성 값을 명확하게 작성할 수 있다는 것을 제외하고는) 반드시 소스 코드를 수정할 수 있습니다.
내 접근 방식은 문자 버퍼를 작성하고 이진 데이터를 작성하는 것입니다. 그런 다음 값을 속성에 쓰는 메소드로 전달하십시오.
예 :
[편집]을 위해 : DCMTK, dcmodify : http://dicom.offis.de/dcmtk.php.en
좋은 제안. 기타 : 하나는 고르지 않은 패딩을 넣을 수 있습니다. 사용되지 않는 헤더와 개인 헤더를 사용하고, 필요한 헤더를 드롭하고, 사용 된 TransferSyntax에 대해 거짓말을하고, 프레임 속도에 대해 거짓말을하고, 저장된 비트 등을 넣을 수 있습니다. 형식을 사용하면 여러 가지 방법으로 깨지기가 쉽습니다. 주요 공급 업체는 항상 규정을 준수하고 견고한 제품을 보낼 수 없습니다. – Ashley
위대한 의견과 대답, 모두에게 감사합니다! –
난 당신이 (I 등을 할 수있는 그 어떤 모르는 즉시 사용 가능한 도구를 요구하고 있는지 확실하지 않다 쉬운 것들) 또는 몇 줄의 코드로 그렇게 할 수있는 라이브러리가 필요합니다. –
둘 중 하나는 ... 개념이나 아이디어조차도. 기술적 인 관점에서 볼 때, dicom 파일은 어떻게 borked가됩니까? –