ошибка в команде MATLAB imread()

ошибка в команде MATLAB imread()

Всякий раз, когда я пытаюсь выполнить команду imread('example.jpg')в MATLAB 2014b, я получаю исключение:

Caught "std::exception" Exception message is:
locale::facet::_S_create_c_locale name not valid

Я получаю его также при запуске Matlab. Он установлен на удаленном рабочем столе, к которому я подключаюсь через SSH

Я пробовал менять файл локали несколько раз, но ничего не вышло. Мой текущий /etc/defaults/localeвыглядит так

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME=en_DK.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=fi_FI.UTF-8
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=C

Но когда я запускаю команду locale, я получаю

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=C

Является ли это несоответствие причиной проблемы? Как избавиться от этого исключения?

решение1

Я мог бы решить это, просто добавив

setenv('LC_ALL','C')

в код Matlab.

Связанный контент