元派遣プログラマの自称技術系ブログです。雑記とか自作のオープンソースプロジェクトの話とか。
Javaとか組込とかできます。お仕事ください。

ARToolkit移植中…8

移植自体は完了。

とりあえずこんなコード書くと、ばっちりJavaで計算してくれる物が出来た。

package jp.nyatla.nyartoolkit.base;


import java.io.*;
import java.util.*;

public class Tester {
	private final String patt_file  ="D:\\project.files\\java.Lab\\NyARToolKit\\Data\\patt.hiro";
	private final String data_file  ="D:\\project.files\\java.Lab\\NyARToolKit\\Data\\320x240ABGR.raw";
	private final String camera_file="D:\\project.files\\java.Lab\\NyARToolKit\\Data\\camera_para.dat";
	public Tester()
	{
	}
	public void Test_arDetectMarkerLite() throws Exception
	{
//		int ret=AR.arLoadPatt(patt_file);

		ARParam ap	=new ARParam();
		ap.loadFromARFile(camera_file);
		ap.changeSize(320,240);
		AR ar=new AR(ap);
//		AR.arInitCparam(ap);
		File f=new File(data_file);
		FileInputStream fs=new FileInputStream(data_file);
		byte[] buf=new byte[(int)f.length()];
		fs.read(buf);
		BGRA_Raster ra=BGRA_Raster.wrap(buf, 320, 240);
//		Blank_Raster ra=new Blank_Raster(320, 240);
		Date d2=new Date();
		for(int i=0;i<1000;i++){
                    ar.detectMarkerLite(ra, 100);
		}
                Date d=new Date();
		System.out.println(d.getTime()-d2.getTime());

	}
	public static void main(String[] args)
	{
		
		try{
			Tester t=new Tester();
			//t.Test_arGetVersion();
			t.Test_arDetectMarkerLite();
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
}

パターン認識部分と座標変換処理系の橋渡しがまだできてない。QRコード認識できるように組み替えるからどうでもいいといえばいいんだけど・・・w

とりあえず画像から矩形を認識して、その位置を計算するところまではばっちり☆


ARToolkit使ってみたいけどC++判らん人!まってろよー、もうすぐ使えるようになるぞ〜!