Гнуплот, Opencv.Вывести гистограмму из cv :: Mat - PullRequest
0 голосов
/ 19 февраля 2012

Можно ли построить матрицу (гистограмму) наподобие [v (1); ...; v (i-1); v (i)] в gnuplot.Это стандартный вывод с помощью stringstream << cv :: Mat ().Это значения y для значений оттенка от 0 до 180. </p>

[25;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;4;0;0;0;5;0;0;0;0;0;16;0;0;0;0;0;3;0;0;0;4;0;10;0;0;1;0;0;4;0;37;3;3;0;0;11;10;7;0;0;47;0;0;16;0;18;91;8;41;34;101;22;15;149;223;45;94;25;0;312;745;53;28;166;413;253;47;682;144;63;630;48;92;222;3;253;175;1;62;7;1;80;0;40;9;0;1;0;0;2;12;0;0;0;9;1;0;0;0;0;2;0;0;0;0;0;5;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;7;0;0;0;0;0;0;0;0;0;0;0;0;0;0]

Было бы неплохо получить краткое руководство о том, как представлять данные для gnuplot.

1 Ответ

1 голос
/ 01 мая 2012

У вас есть несколько вариантов (1) Используйте оболочку GNUPLOT-CPP (скачать здесь: http://code.google.com/p/gnuplot-cpp/) Это поможет вам в руководстве / документах

(2) Простое решение. Сохраните ваши значения в файл, скажем «DATA.txt», затем вызовите из cpp (команда exec) скрипт типа «plot.plt», который выглядит примерно так:

    #!/usr/bin/gnuplot -persist

set terminal postscript
set output "TXTFILE.ps"
unset key

#set title "Titel"
set xlabel "cy/px"
set ylabel "SFR"
(...)
set grid

plot "DATA.txt" using 1:2 smooth csplines w l ls 1,\
    "DATA.txt" using 3:4 smooth csplines w l ls 2
#    EOF

Как видите, он отобразит DATA.txt, который вы только что вывели. Используйте google для всех предыдущих сценариев gnuplot, например,

...