본문 바로가기

내가 작업한 것들/소프트웨어

(64)
무료 공개 DICOM viewer, v0.2.2.24 (오픈소스화) v0.2.2.24 업데이트 + 오픈소스 이 프로그램은 DVD 나 CD 에 DICOM 을 함께 넣고 보기 위해 만들어진 간단한 프로그램 입니다. 다만, 이 프로그램은 공개로 만들어 진데다, 표시 할 수 있는 최소 DICOM tag 가 한정 적 이므로, 이를 고려 하여 사용하시면 좋겠습니다. 물론 아직 버젼이 낮고, window width 표현력이 문제가 있는 부분이 발견 되고 있으므로, 참고용으로 사용하시면 좋을 듯 합니다. (최신 버젼에서 Window center, width 를 계산 하여 처리 하도록 변경 됨) 문자열 기본 인코딩은 UTF-8 을 기본으로 하고 있으며, DICOM tag 의 데이터 배열은 Little Endian 을 기본으로 하고 있습니다. 이 프로그램은 누구나 사용할 수 있으며, 실행..
Medical RAW viewer, version 0.7.4.200 오픈소스화. Medial RAW viewer 는 제가 직접 만들어 배포하는 Freeware 입니다. 다만, 이 프로그램을 상업적 목적으로 사용하시거나, 개조 또는 재배포 등은 허용되지 않으며, 발각시 법적인 조치까지 갈 수 있음을 먼저 인지해 주시고 사용해 주시기 바랍니다. open source 입니다. 버젼 0.7.4.200 부터 모든 소스를 bitbucket 에 올리고 있으며, Download section 에서 최신 버젼을 내려 받을 수 있도록 7z 파일을 제공 합니다. 이 프로그램은 일반적으로 사용되는 의학관련 RAW 영상 이나, DICOM 을 읽고 보여 주는 프로그램으로서, FLTK 1.3.4-ts 와 제가 직접 만들어 쓰는 libtinydicom, minIni 등의 opensource 를 사용하여 만들어 ..
의료 RAW 에 HDR 적용을 위한 test 결과 및 프로그램. X-Ray 로 부터 CR 이나 DR 영상을 횟득 하면, 이 역시 Film 대비 CMOS/CCD/TFT 센서 소자에 따라 실제 계조(빛은 아니지만, 빛 대신 방사선인 radiation 을 대체 해서 생각 하면 됩니다) 보다 못한 뭔가가 얻어지게 됩니다. 각 제조사 마다 이를 보정하기 위한 온갖 기능들이 있기 마련 입니다만, 저는 이런 특정 회사에 특화된 형태가 아니라 일반적인 이론들에 따라 후처리를 하는 것에 관심을 가져 보았습니다. 그래서 먼저 Erik Reinhard 교수님이 2005년에 이론을 수립 했던 Hight Dynamic Range 알고리즘을 연구해 보았습니다. 세상은 참 대단한 분들이 많기 마련 이지요. 그리고 이 이론을 C++ 코드로 만들어 봅니다. 수식에 따라 for() 를 남발 하면서 ..
fltk-1.3.4.1-ts Mac OS 맥용 빌드 업데이트 ! 제가 FLTK-1.3.4-1 에서 clone 하여 사용 하고 있는 fltk-1.3.4-1-ts 판의 업데이트가 있었습니다. 보통 한 PC 에서만 쓰다 보니, 다른 PC 에서 쓰기 전 까지는 문제점을 못 발견 하는 것이 1인 개발자의 한계인 듯 합니다만 .. 어쨋든 간만에 맥에서 전체를 내려 받아 빌드 해 보니 문제가 많다는 점을 발견하고 대부분 수정 하였습니다.위치: https://github.com/rageworx/fltk-1.3.4-1-ts 맥이던 어디던 git 가 설치 되어 있다면 clone 을 해서 사용이 가능 합니다. 다만, Windows 에서 MSYS 와 MinGW-W64 를 이용해서 빌드 하신다면, config64.sh 를 한번 해 주셔서 configure 를 하신 다음 빌드 하시거나, cp..
openmp 병렬 처리를 이용한 librawprocessor 성능 향상의 예. 개발자가 뭔가를 설계 할때 어려움을 격는 부분이 항상 있는 부분이 있다고 한다면, 아마 for() 로 돌리는 구문을 어떻게 빠르게 할 것인가? 또는 이걸 thread 로 어떻게 만들 수 있을까? 일 겁니다. MinGW-W64 의 경우는 이 작업을 -fopenmp 명령과 함께 compile & link 하면 #pragma omp 를 사용할 수 있습니다. 다만, 3.0 까지는 지원이 안되기 때문에 좀 더 자세한 thread 분리는 어려운 부분이 있습니다. openmp 사용시엔 pthread 가 사용 되는건 추가로 인지 하고 있어야 합니다. 먼저 코드상에 직접 사용된 예를 보면 ... 위 영역 처럼 #pragma omp parallel for 만 지시해서 다음에 오는 for() 문 자체를 pthread 로 분..
RAW image resizer 2017-01-11-B 프로그램 소개 이 프로그램은 Windows 의 console 에서 구동되는 의료 영상 이미지의 크기를 다양한 필터와, 효과로 개선 해 주는 용도 입니다. 사용 가능한 것은 현재 다음과 같습니다.영상 크기 변경: nearest, bilinear, bicubic, laczos3, B-spline 필터를 제공sharpen 필터를 적용 할 수 있음median 필터를 적용 할 수 있음 이 프로그램은 제 open source 인 librawprocessor 를 이용해서 만든 것으로, 다음 위치에서 소스코드를 참고 할 수 있습니다.https://github.com/rageworx/librawprocessor 구동 제한WindowNT 6 kernel 이상의 OS (Windows 2000 이후)32bit 또는 64bit..
Medical RAW Viewer Version 0.7 부터 변경 된 점들... 개인이 편하고자 만들어 쓰는 Medical RAW viewer 에 다음과 같은 변경 사항을 적용 중 입니다. 혹시 필요 하신분들은 조금 더 기다리시면 0.7 버젼을 만나 보실 수 있지 않을까 합니다.변경된 기능히스토그램 출력 방법 변경, down scale 된 만큼 평균값 출력 하도록 하여 거친 그래프가 더이상 나오지 않음.마우스 오른쪽 버튼으로 자세한 픽셀 매트릭스를 볼때 원본 영상대비 인지를 쉽게 하기 위해 위 캡쳐 화면처럼 변경. 추가중인 기능Shift + 마우스 왼쪽 클릭으로 픽셀 거리 측정 기능에서도 Histogram 출력. 얼마전에 완성한 Polygon fill 알고리즘을 이용하여, 여러 포인트로 만든 폴리곤 영역 내 Histogram 출력표준 편차 정보 출력RAW 영상 저장 (Threshol..
Sentinel HASP 덕에 libshttp 를 업데이트 하다 ... 혹시 요즘도 Sentinel 의 HASP key 를 쓰는 회사가 많이 있는지는 모르겠습니다만, 간만에 HASP license 관련 작업을 하게 되었습니다. 이번엔 마스터 키가 장착 되어 있는 원격 EMS 서버에서 현재 클라이언트의 Time Period 키를 만들고 지울 수 있도록 만들면서 HTTP 통신을 해야 하는 일이 생기면서 기존에 만들어 두었던 libshttp 를 업데이트 하게 되었습니다.libshttp Github 주소https://github.com/rageworx/libshttp 이 오래된 라이브러리를 다시 갱신한 이유는, Windows 에서 보통 기본으로 쓰는 wininet 라이브러리가 Sentinel EMS 7.4 와 제대로 붙지 못하고, XML 정보를 POST 로 보내도, 이를 EMS 서..