예제 #1
0
  public void assureLowerCaseAndSift() {
    addReport("Renaming image filename extensions to lowercase");
    imageManager.batchRenameImagesToLowerCase(images);

    addReport("Computing SIFT if not computed before");
    for (Image image : images) {
      if (!imageManager.hasSift(image)) {
        imageManager.performSift(image);
      }
    }
  }
예제 #2
0
  public void loadExifInformation() {
    addReport("Loading focal information");

    for (Image image : images) {
      imageManager.loadExifInformation(image);
    }
  }
예제 #3
0
  /**
   * -------------------------------------------------------------------- Core logic
   * --------------------------------------------------------------------
   */
  public void loadImagesFromDirectory(String directory) {
    images = new LinkedList<Image>();

    images.addAll(imageManager.loadImagesFromDirectory(directory, false));

    imageDirectory = directory;
    outputDirectory = new File(directory, "bundler").getPath();
  }
예제 #4
0
 public void stop() {
   if (isRunning) {
     addReport("SfM stopped");
     isRunning = false;
     thread.interrupt();
     if (bundlerProcess != null) {
       bundlerProcess.destroy();
     }
     for (Process process : imageManager.getActiveProcesses()) {
       process.destroy();
     }
   }
 }