Package me.kikoqiu.opencl.image

Examples of me.kikoqiu.opencl.image.IImage2d.create()


      if( hh*divider<h){
        ++hh;
      }
      w=ww;h=hh;
      IImage2d img=new ImageRGBA_SNORM_INT16();
      img.create(w, h, true);
      outputs.add(img);
    }
  }
 
  public void filter(IImage2d input, Main main){
View Full Code Here


    if(bi==null)return ret;   
    Profile.begin();
   
    //create current frame image and scale it
    IImage2d inputNow=new ImageRGBA();   
    inputNow.create(bi);   
    sfNow.init(inputNow.getWidth(), inputNow.getHeight(), 16, 2);
    sfNow.filter(inputNow);
       
    Profile.out();
    if(inputPrev!=null){
View Full Code Here

    sfNow.filter(inputNow);
       
    Profile.out();
    if(inputPrev!=null){
      IImage2d calcatedFlow=new ImageRGBA_SNORM_INT16();;
      calcatedFlow.create(1, 1, true);
      Helpers.getInstance().clear(calcatedFlow);
     
      //for all scaled images,from small to large
      for(int i=sfPrev.outputs.size()-1;i>=0;--i){
        IImage2d i1=sfPrev.outputs.get(i),i2=sfNow.outputs.get(i);
View Full Code Here

      for(int i=sfPrev.outputs.size()-1;i>=0;--i){
        IImage2d i1=sfPrev.outputs.get(i),i2=sfNow.outputs.get(i);
       
        //create preprocessed image
        IImage2d preprocessed=new ImageRGBA_SNORM_INT16();
        preprocessed.create(i1.getWidth(), i1.getHeight(), true);       
        preprocess.filter(i1, preprocessed)
        Profile.out("pre");
       
        IImage2d flowout=new ImageRGBA_SNORM_INT16()
        flowout.create(preprocessed.getWidth(), preprocessed.getHeight(), true);       
View Full Code Here

        preprocessed.create(i1.getWidth(), i1.getHeight(), true);       
        preprocess.filter(i1, preprocessed)
        Profile.out("pre");
       
        IImage2d flowout=new ImageRGBA_SNORM_INT16()
        flowout.create(preprocessed.getWidth(), preprocessed.getHeight(), true);       
       
        solve.filter(i2, preprocessed,calcatedFlow,flowout);
        calcatedFlow.dispose();
       
        //iterate current level
View Full Code Here

        calcatedFlow.dispose();
       
        //iterate current level
        if(iterateCount>0){
          IImage2d flowout1=new ImageRGBA_SNORM_INT16()
          flowout1.create(preprocessed.getWidth(), preprocessed.getHeight(), true);
          IImage2d fin=flowout;
          for(int k=0;k<iterateCount;++k){
            IImage2d fnext=fin==flowout?flowout1:flowout;
            solve_k.filter(i2, preprocessed,fin,fnext);         
            fin=fnext;
View Full Code Here

      if(ww*divider!=w || hh*divider!=h){
        break;
      }
      w=ww;h=hh;
      IImage2d img=new ImageLumi();
      img.create(w, h, true);
      outputs.add(img);
    }
  }
 
  public void filter(IImage2d input){
View Full Code Here

  }
 
  public void filter(IImage2d input){
    for(IImage2d output:outputs){
      IImage2d tmp=new ImageLumi();
      tmp.create(output.getWidth(), output.getHeight()*2, true);
     
      Kernels.setArgs(kernel, input.getBuffer(), tmp.getBuffer());     
      exec(kernel,tmp.getWidth(),tmp.getHeight());     
     
     
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.