Компьютерная томография: ошибка преобразования кода Matlab в C / OpenCV - PullRequest
0 голосов
/ 21 февраля 2012

Я работаю над проблемой компьютерной томографии, в которой мне нужно смоделировать генерацию необработанных данных или синограммы, которые генерирует аппарат КТ.

Matlab имеет встроенную функцию "радон ()", чтобы имитировать то же самое.Я успешно написал собственный код в Matlab для генерации синограммы (т.е. без использования radon ()).

Я преобразовал этот код в C, используя библиотеку OpenCV для обработки загрузки / отображения / сохранения изображений.

Проблема в том, что, хотя мой вывод Matlab генерирует синограмму, как и ожидалось, мойС кодом нет.Я просто перевел код Matlab на C, но вывод C ориентирован по-другому, а между ними есть черные полосы.Уровни серого в выходном виде C напоминают уровни серого Синограммы и шаблон, сгенерированный кодом Matlab.Единственное, что кажется сегментированным в C. (Я отправлю изображения, если вы дадите мне свой почтовый идентификатор, поскольку я не могу прикрепить их здесь.)

Может ли кто-нибудь помочь мне понять, почему это происходит?Я рецензировал свой код и проверил наличие ошибок приведения типов, выделения памяти и т. Д. Но все они кажутся правильными.

Обрабатывает ли Matlab данные, которые отличаются от C?Что может быть объяснением наклона?

Пожалуйста, помогите мне.Дайте мне знать, если вам нужно больше разъяснений относительно постановки задачи или вам нужно посмотреть алгоритм.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 03 марта 2012

Вот изображения, связанные с сомнением, которое я задал в оригинальном сообщении

Ожидаемый результат: http://www.photoshop.com/users/pyridot/albums/a40e3f7326d942ff821fc00612e6b458/view#e027c2b94bfd4210870bc6c57b1f1a03

Выход C: http://www.photoshop.com/users/pyridot/albums/a40e3f7326d942ff821fc00612e6b458/view#ff529abedb3e49aa8865276f2c2bc625

0 голосов
/ 21 февраля 2012

Очень трудно помочь с таким вопросом, когда мы не видим ни кода, ни вывода, ни ожидаемого вывода.

Возможно, вы можете загрузить изображения на общедоступный хостинг изображений и добавить ссылки из вопроса?

Если вы выполняете тригонометрические вызовы функций (sin() и друзья), я бы уделил дополнительное внимание используемым аргументам, а также проверил, может ли Matlab каким-то образом повысить точность результата. Конечно, это удар в темноте, так как я не знаком с вашим доменом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...