Инструменты пользователя

Инструменты сайта


converterdicom

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
converterdicom [2022/06/16 04:06]
sector
converterdicom [2023/01/29 05:35] (текущий)
sector
Строка 1: Строка 1:
 ====== Меняем кодировку в DICOM и конвертируем кириллицу в латиницу, пишем в базу и отправляем в ORTHANC. ====== ====== Меняем кодировку в DICOM и конвертируем кириллицу в латиницу, пишем в базу и отправляем в ORTHANC. ======
 Есть у нас рентген аппарат у которого в xml файле написана кодировка ISO-8859-5, а русские символы в Windows-1251. Есть у нас рентген аппарат у которого в xml файле написана кодировка ISO-8859-5, а русские символы в Windows-1251.
-Изменим тег с кодировкой и конвертируем кириллицу в латиницу с помощью python и отправим это все дело в ORTHANC. +Изменим тег с кодировкой и конвертируем кириллицу в латиницу с помощью python и отправим это все дело в ORTHANC. 
 + 
 +[[https://github.com/AndreyGutov/DicomConverter.git|Ссылка на gitHub]] 
    
- +=== Создадим базу данных: ===
-ОСТОРОЖНО ! ГОВНОКОД !  +
- +
- +
-Создадим базу данных:+
  
 <code | INI> <code | INI>
Строка 74: Строка 72:
 </code> </code>
  
-Подключимся к базе:+=== Подключимся к базе: ===
  
 <code | INI> <code | INI>
Строка 87: Строка 85:
 </code> </code>
  
- +=== Сам скрипт конвертации и отправки: ===
-server '192.168.1.43 4242' - куда будем слать снимки  +
- +
-fileList = open("/root/python/files_to_copy", "r") - путь до списка файлов, пример: /home/ololoev/DCM/777_888.DCM  +
- +
-Сам скрипт отправки: +
  
 <code | INI> <code | INI>
Строка 109: Строка 102:
  
  
-server = '192.168.1.43 4242' +server = '192.168.1.43 4242' # Сервер и порт куда будем посылать снимки 
-fileList = open("/root/python/files_to_copy", "r")+fileList = open("/root/python/files_to_copy", "r") # файл со списком изображений(построчно), пример: (/root/DCM/555_777.DCM
  
 from datetime import datetime from datetime import datetime
Строка 197: Строка 190:
 </code> </code>
  
-Скрипт в крон для запуска конвертера: +=== Скрипт в крон для запуска конвертера: === 
-Проверяем, работает ли конвертер в данные момент.  + 
-синхронизируем хранилище сервера с рабочей станцией мед. оборудования (на рабочих станциях хранилища со снимками у меня расшарены, а на сервере примонтированы в каталог /mnt). +  * Проверяем, работает ли конвертер в данные момент.  
-создаем файл со списком изображений. +  синхронизируем хранилище сервера с рабочей станцией мед. оборудования (на рабочих станциях хранилища со снимками у меня расшарены, а на сервере примонтированы в каталог /mnt). 
-пишем лог.+  создаем файл со списком изображений. 
 +  пишем лог.
  
 <code | INI> <code | INI>
Строка 220: Строка 214:
 fi fi
  
 +</code>
 +
 +=== Транслитерация: ===
 +
 +<code | INI>
 +cat transliterate.py
 +
 +# -*- coding: utf-8 -*-
 +
 +def transliterate(name):
 +   """
 +   Автор: LarsKort
 +   Дата: 16/07/2011; 1:05 GMT-4;
 +   Не претендую на "хорошесть" словарика. В моем случае и такой пойдет,
 +   вы всегда сможете добавить свои символы и даже слова. Только
 +   это нужно делать в обоих списках, иначе будет ошибка.
 +   """
 +   # Слоаврь с заменами
 +   slovar = {'а':'a','б':'b','в':'v','г':'g','д':'d','е':'e','ё':'yo',
 +      'ж':'zh','з':'z','и':'i','й':'i','к':'k','л':'l','м':'m','н':'n',
 +      'о':'o','п':'p','р':'r','с':'s','т':'t','у':'u','ф':'f','х':'h',
 +      'ц':'c','ч':'ch','ш':'sh','щ':'sch','ъ':'','ы':'y','ь':'','э':'e',
 +      'ю':'u','я':'ya', 'А':'A','Б':'B','В':'V','Г':'G','Д':'D','Е':'E','Ё':'YO',
 +      'Ж':'ZH','З':'Z','И':'I','Й':'I','К':'K','Л':'L','М':'M','Н':'N',
 +      'О':'O','П':'P','Р':'R','С':'S','Т':'T','У':'U','Ф':'F','Х':'H',
 +      'Ц':'C','Ч':'CH','Ш':'SH','Щ':'SCH','Ъ':'','Ы':'y','Ь':'','Э':'E',
 +      'Ю':'U','Я':'YA',',':'','?':'',' ':' ','~':'','!':'','@':'','#':'',
 +      '$':'','%':'','^':' ','&':'','*':'','(':'',')':'','-':'','=':'','+':'',
 +      ':':'',';':'','<':'','>':'','\'':'','"':'','\\':'','/':'','№':'',
 +      '[':'',']':'','{':'','}':'','ґ':'','ї':'', 'є':'','Ґ':'g','Ї':'i',
 +      'Є':'e', '—':''}
 +
 +   # Циклически заменяем все буквы в строке
 +   for key in slovar:
 +      name = name.replace(key, slovar[key])
 +   return name
  
  
 </code> </code>
converterdicom.1655352375.txt.gz · Последнее изменение: 2022/06/16 04:06 — sector

Яндекс.Метрика