生物屋さんのためのゼロからのプログラミング

―忘れないための覚書 (たま~に更新)―

2015-02-01から1ヶ月間の記事一覧

Javaで画像上にdrawOvalを用いてROI (Circle)を書き、切り出す。

今回は、前回描いた円形ROIの内部を切り取るコードを書いた。 (かなり強引なやり方であるが、ROI内の輝度値を取り出したかったため、良しとした。) まずは、ソースコードを書きに記す。 import java.awt.BorderLayout; import java.awt.Color; import java…

Javaで画像上にdrawOvalを用いてROI (Circle)を書く

今回は円形のROIの書き方を2種類書く。Javaでの円の描画には、通常下記のコードを用いる。 public abstract void drawOval(int x, int y, int width, int height)このツールでは下の図のように始点からwidthの幅とheightの高さを持つ四角に内接する円を描く…

マウスを置いた点の輝度値を取得し、表示する。

今回は、よく画像解析ソフトにあるマウスを置いた点の輝度値を表示させるツールをJavaで書いた。 まずはそのソースコードを下記に記す。 import java.awt.BorderLayout; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.even…

BufferedImageの画像をZoom in、Zoom Outする。

ここでは、ボタンを押してBufferedImageの画像をZoom inまたはZoom Outするプログラムを書く。 まずは、コードを下記に記す。 import java.awt.BorderLayout; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionLi…

setAlwaysOnTopを使って、JFrameの表示順番を変える

複数のJFrameを開いている時に、あるaction後に特定のJFrameを最前列に表示するプログラムを書く。ここでは、2つの写真をJFrameで表示し、JButtonによって最前列のJFrameを変えてみた。 import java.awt.BorderLayout; import java.awt.Graphics; import ja…

Java Imageクラス (createImage(new MemoryImageSource)) での描画

今回は、画像をImageクラスで描くプログラムを示す。 ここでは格子柄のイメージを書いた。まずはソースコードを下記に紹介する。 import java.awt.BorderLayout; import java.awt.FileDialog; import java.awt.Frame; import java.awt.Graphics; import java…

JFreeChartで、個々の折れ線グラフの色と線の太さを変える

前回書いた折れ線グラフを上書きするプログラムに、個々の折れ線グラフの色と線の太さを変えるプログラムを書く。かなり強引で最もキレイな書き方が多分あるはず。とりあえず、プログラムの全体を下記に示す。 package testProgram; import java.awt.BasicSt…

JFreeChartを使って、折れ線グラフ を上書きする。

今回は以前取り扱っていたJFreeChartを使ったプログラミングを記す。 とある事情で、ボタンを押したときに折れ線グラフ(計3つ)を上書きするプログラミングを書いてみた。まずは全体のソースコードを下記に記す。 import java.awt.BorderLayout; import ja…

画像を“名前を付けて保存する”。

今回はJavaで画像(BufferedImage)を保存ダイアログを開いて保存する方法を書く。 (同じ名前で拡張子の異なるファイルを保存する方法も書いたJavaでJFileChooserで画像を開き、名前を付けて画像を保存する。 - 生物屋さんのためのゼロからのプログラミング)…

Javaで画像にROIを置き、輝度値を測定する。

ここでは、ROIで囲んだ領域の輝度値を求めるプログラムを書く。 import java.awt.BorderLayout; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.…

BufferedImage getSubimageを使って、画像の一部を切り取る。

前回に引き続き、今回もJavaでの画像処理 (ImageJなしでの)。今回はROIを置いた領域を切り取るプログラミングを書く。 画像の切り取りには「BufferedImage getSubimage」を使用した。このツールの詳細はOracleのHPJava 2 Platform SE 1.3: クラス BufferedIm…

Javaで画像上にROI (Rectangular)を書く

ここからはJavaでの画像処理について書く。(ImageJなしで)今回は画像上にROIを書く。 まずはプログラムの全体を示す。 import java.awt.BorderLayout; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;…

JFreeChartを使って、2種類のグラフ (散布図と折れ線グラフ) を重ねて表示する。

ここでは、データをグラフに表示し、その中で極大値と極小値を表示するプログラムを書く。 ただし、コードを簡潔にするために解析用のデータはRandomで作成し、極大値と極小値の代わりに“5の倍数”と“8の倍数”の点をマークするプログラムを書いた。 import …

極大値と極小値を検出する

今回は、極大値と極小値を検出するプログラミングを示す。 import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Random; import javax.swing.JButton; import javax.swing.JFrame; i…

Apache POIを使って、エクセルにデータを書き出す。

ここでは、2次元配列を作成しエクセルに書き出す方法を書く。 エクセルファイルの保存には保存ダイアログを使用し、“名前を付けて保存”が出来るようにした。 プログラミングの全体は下記のような感じ。 public class Export extends JFrame implements Acti…

エクセルからデータを読み込み、Peakを検出しエクセルに出力する

生化学実験において蛍光顕微鏡を用いた 生細胞イメージングは重要な実験となっている。ここでは、最終的に遺伝子コード型カルシウムセンサー(GECI)やFura2などの蛍光カルシウムセンサーを用いた実験結果等から、Peakを検出し解析するためのプログラミングをJ…