Я хочу отобразить изображение в октаве без масштабирования (т.е. один пиксель изображения соответствует одному пикселю моего монитора) или с неправильным соотношением сторон. К сожалению, ни imshow()
, ни imagesc()
, ни image()
не делают этого автоматически. Но это должно быть возможно, верно?
Я использую Octave 3.2.4.
Как отобразить изображение в Octave с исходным соотношением сторон и размером?
Ответы (2)
Есть несколько способов сделать это. Вот 2 из них:
- запустить
daspect ([1 1])
после отображения изображения; - используйте набор, чтобы изменить некоторые свойства изображения
set (gca, "Position", [0 0 1 1])
person
carandraug
schedule
22.08.2012
Запустив
imshow(randn([20 30])), daspect ([1 1]), set (gca, "Position", [0 0 1 1])
, я получаю увеличенное изображение. То, что я хотел бы (и то, что, я думаю, требует этот вопрос), было бы крошечным изображением 20x30 с одним пикселем монитора на пиксель изображения. Есть ли способ сделать это?
- person Luis Mendo; 21.08.2016
Думаю, теперь я понял. Мне нужно установить положение фигуры в пикселях соответствующего размера в дополнение к
set (gca, "Position", [0 0 1 1])
- person Luis Mendo; 21.08.2016
Я обнаружил, что в Octave 3.8.1 (под управлением версии дистрибутива Linux Mint 17) использование axis tight normal
создаст корректный график, аналогичный стандартному выводу Matlab. YMMV.
person
Dan Parshall
schedule
16.01.2015