プログラミング

QtでCUDAを使う

CUDA NVIDIAのGPUを汎用計算に使えるCUDAという開発環境がある。これを使うとCPUと比べて数十倍高速化することがある。CPUで数十倍高速化するのは何年先か分からないので、結構すごい。ただし、並列処理が可能なプログラムしか高速化しないので、CUDAで高速…

QtでOpenCVを使う

OpenCV Qtで画像を扱うにはQImageを使うけど、簡単な機能しか付いていないのでOpenCVを使いたい。というわけで、OpenCV 2.2をインストールした。(QtとEigenが2.2から使える?) グレースケール化 グレースケール化と書いてあるボタンを押したら、グレースケー…

サイン波の多項式近似

多項式近似 サイン波にガウスノイズを加えた点から、元のサイン波を近似してみる。 これはPRMLという本の第1章の話で、こちらのサイトを参考にさせてもらった。 誤差 を最小とするを求めれば近似多項式を作れる。最小を求めるには微分すれば良いので、 つま…

sin波にノイズを足したグラフ

sin波に正規分布から取った値を足した点を表示する。 plot.cpp #include "plot.h" #include <qwt_plot_curve.h> #include <qwt_legend.h> #include <random> Plot::Plot(QWidget *parent) : QwtPlot(parent) { setCanvasBackground(QColor(Qt::white)); // 凡例 insertLegend(new QwtLegend(), QwtPlo</random></qwt_legend.h></qwt_plot_curve.h>…

Qtでグラフ描画

Qwtのインストール 計測系のプログラムなどでグラフを表示したいとことは多い。QtのGUI向けにQwtというグラフ表示ライブラリがあるので使ってみる。無料。 公式サイト ここからQwt6をダウンロードする。それでsrcディレクトリにあるproファイルからQt Creato…

改造Widgetを付ける

QLabelとかQPushButtonとかを継承して、何かの機能を付けたいときQt CreatorではContainersのWidgetを使う。 QLabelの様なGUI表示されるものはQWidgetを継承しているので、Qt Cratorで貼ったWidgetを自作Widgetに格上げする。 例として、自作Labelを作ってみ…

ボタンを押したらHello World

Qt CreatorでGUI作成 Qtを使ってGUIのソフトを作ってみる。簡単な例としてボタンを押したらラベルに文字が表示されるソフトにしよう。 Qt Creatorの新規作成からGUIを選んで、基底クラスをQWidgetにする。QMainWindowはファイルとかのメニューがあるやつで、…

最近はやりのQt使う

Qt(キュート)ってなに プログラミングの勉強しようと思うと、たいていはC言語とかJavaを使うけど頑張って本のコード写しても結果が白黒の画面でがっかりする。 やっぱりGUIじゃなきゃ面白くないのでQtというC++のGUI開発環境を使ってみる。普通WindowsでGUI…