工作原因,切割图片,任务急,暂留调通的源码,留以后用.
packagecom.rosetta.image.test; importorg.opencv.core.Core; importorg.opencv.core.Mat; importorg.opencv.core.Rect; importorg.opencv.highgui.Highgui; /** * @Author: nya * @Date: 18-8-28 下午5:50 */ public classSplitImage { public static voidmain(String[] args ){ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); Mat image = Highgui.imread("/home/han/images/55.png"); //System.out.println( "mat = " + image.dump() ); int m = 5; int n = 5; int height =image.rows(); int width =image.cols(); System.out.println("height:"+height+" "+width); int ceil_height = height/m; int ceil_width = width/n; System.out.println("ceil_height:"+ceil_height+" ceil_"+ceil_width); String filename = "/home/han/images/split/sub"; int x = m / 3; int y = m % 3; int z = (x - 1) * 3 + y + 1; for(int i = 0; i<z; i++) { for(int j = 0; j<z; j++){ int a = i *ceil_width ; int b = j *ceil_height; System.out.println(a+","+b+","+ceil_width+","+ceil_height); Rect rect = new Rect(a,b,3*ceil_width,3*ceil_height); Mat roi_img = newMat(image,rect); //Mat tmp_img = new Mat(); //roi_img.copyTo(tmp_img); Highgui.imwrite(filename+"_"+i+"_"+j+".jpg", roi_img); } } } }