List of usage examples for javax.imageio ImageIO read
public static BufferedImage read(ImageInputStream stream) throws IOException
From source file:com.timothyyip.face.FaceDetector.java
public static BufferedImage getPhysicalFlickrImage(Photo flickrPhoto) throws IOException, ImageReadException { String urlString = "http://farm7.static.flickr.com/" + flickrPhoto.getServer() + "/" + flickrPhoto.getId() + "_" + flickrPhoto.getSecret() + ".jpg"; System.out.println(urlString); BufferedImage im = null;/*from w w w . j a v a2s . c om*/ try { im = ImageIO.read(new URL(urlString)); } finally { return im; } }
From source file:com.neophob.sematrix.core.generator.Image.java
/** * load a new file.// ww w . ja v a 2 s. co m * * @param filename the filename */ public synchronized void loadFile(String filename) { if (StringUtils.isBlank(filename)) { LOG.log(Level.INFO, "Empty filename provided, call ignored!"); return; } //only load if needed if (StringUtils.equals(filename, this.filename)) { LOG.log(Level.INFO, "new filename does not differ from old: " + filename); return; } try { String fileToLoad = fileUtils.getImageDir() + File.separator + filename; LOG.log(Level.INFO, "load image " + fileToLoad); BufferedImage img = ImageIO.read(new File(fileToLoad)); if (img == null || img.getHeight() < 2) { LOG.log(Level.WARNING, "Invalid image, image height is < 2!"); return; } //convert to RGB colorspace int w = img.getWidth(); int h = img.getHeight(); int[] dataBuffInt = img.getRGB(0, 0, w, h, null, 0, w); LOG.log(Level.INFO, "resize to img " + filename + " " + internalBufferXSize + ", " + internalBufferYSize + " using " + resize.getName()); this.internalBuffer = resize.getBuffer(dataBuffInt, internalBufferXSize, internalBufferYSize, w, h); this.filename = filename; short r, g, b; int rgbColor; //greyscale it for (int i = 0; i < internalBuffer.length; i++) { rgbColor = internalBuffer[i]; r = (short) ((rgbColor >> 16) & 255); g = (short) ((rgbColor >> 8) & 255); b = (short) (rgbColor & 255); int val = (int) (r * 0.3f + g * 0.59f + b * 0.11f); internalBuffer[i] = val; } } catch (Exception e) { LOG.log(Level.WARNING, "Failed to load image " + filename, e); } }
From source file:com.l1j5.web.common.utils.ImageUtils.java
public static void getImageThumbnail(BufferedInputStream stream_file, String save, String type, int w) { try {/*from w ww .jav a2s. c om*/ File file = new File(save); BufferedImage bi = ImageIO.read(stream_file); int width = bi.getWidth(); int height = bi.getHeight(); double ratio = (double) height / width; height = (int) (w * ratio); if (w < width) { width = w; } BufferedImage bufferIm = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Image atemp = bi.getScaledInstance(width, height, Image.SCALE_AREA_AVERAGING); Graphics2D g2 = bufferIm.createGraphics(); g2.drawImage(atemp, 0, 0, width, height, null); ImageIO.write(bufferIm, type, file); } catch (Exception e) { log.error(e); } }
From source file:com.codenvy.corp.MainPage.java
public void gotoManageViewAndGoToIdeBornDown() throws IOException, InterruptedException { driver.get(String.format(mangeViewUrlIDE, agileIdIDE)); new WebDriverWait(driver, 10).until(ExpectedConditions.visibilityOf(burnDownMAinContainer)); burnDownNameIDE = new WebDriverWait(driver, 10) .until(ExpectedConditions.visibilityOfElementLocated(By.id("ghx-items-trigger"))).getText(); Thread.sleep(10000);/*from w ww.j a v a2 s . c om*/ File screen = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); Point p = burnDownMAinContainer.getLocation(); int width = burnDownMAinContainer.getSize().getWidth(); int height = burnDownMAinContainer.getSize().getHeight(); BufferedImage img = ImageIO.read(screen); BufferedImage dest = img.getSubimage(p.getX(), p.getY() - 50, width, height); ImageIO.write(dest, "png", screen); File file = new File(burnDownNameIDE + ".png"); FileUtils.copyFile(screen, file); addText(file, burnDownNameIDE); }
From source file:com.nemesis.admin.UploadServlet.java
/** * @param request// w w w. j a va2s.com * @param response * @throws javax.servlet.ServletException * @throws java.io.IOException * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse * response) * */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (request.getParameter("getfile") != null && !request.getParameter("getfile").isEmpty()) { File file = getFile(request, request.getParameter("getfile")); if (file.exists()) { int bytes = 0; try (ServletOutputStream op = response.getOutputStream()) { response.setContentType(getMimeType(file)); response.setContentLength((int) file.length()); response.setHeader("Content-Disposition", "inline; filename=\"" + file.getName() + "\""); byte[] bbuf = new byte[1024]; DataInputStream in = new DataInputStream(new FileInputStream(file)); while ((in != null) && ((bytes = in.read(bbuf)) != -1)) { op.write(bbuf, 0, bytes); } in.close(); op.flush(); } } } else if (request.getParameter("delfile") != null && !request.getParameter("delfile").isEmpty()) { File file = getFile(request, request.getParameter("delfile")); if (file.exists()) { file.delete(); // TODO:check and report success } } else if (request.getParameter("getthumb") != null && !request.getParameter("getthumb").isEmpty()) { File file = getFile(request, request.getParameter("getthumb")); if (file.exists()) { System.out.println(file.getAbsolutePath()); String mimetype = getMimeType(file); if (mimetype.endsWith("png") || mimetype.endsWith("jpeg") || mimetype.endsWith("jpg") || mimetype.endsWith("gif")) { BufferedImage im = ImageIO.read(file); if (im != null) { int newWidth = 75; if (request.getParameter("w") != null) { try { newWidth = Integer.parseInt(request.getParameter("w")); } catch (Exception e) { //Se mantiene el valor por defecto de 75 } } BufferedImage thumb = Scalr.resize(im, newWidth); if (request.getParameter("h") != null) { try { thumb = Scalr.crop(thumb, newWidth, Integer.parseInt(request.getParameter("h"))); } catch (IllegalArgumentException | ImagingOpException e) { //Se mantienen las proporciones. } } ByteArrayOutputStream os = new ByteArrayOutputStream(); if (mimetype.endsWith("png")) { ImageIO.write(thumb, "PNG", os); response.setContentType("image/png"); } else if (mimetype.endsWith("jpeg")) { ImageIO.write(thumb, "jpg", os); response.setContentType("image/jpeg"); } else if (mimetype.endsWith("jpg")) { ImageIO.write(thumb, "jpg", os); response.setContentType("image/jpeg"); } else { ImageIO.write(thumb, "GIF", os); response.setContentType("image/gif"); } try (ServletOutputStream srvos = response.getOutputStream()) { response.setContentLength(os.size()); response.setHeader("Content-Disposition", "inline; filename=\"" + file.getName() + "\""); os.writeTo(srvos); srvos.flush(); } } } } // TODO: check and report success } else { PrintWriter writer = response.getWriter(); writer.write("call POST with multipart form data"); } }
From source file:br.prof.salesfilho.oci.service.BodyWomanNudeClassifier.java
public void tClassify() { long startTime; long endTime; double totalTime = 0; EuclidianClassifier chestWorker;/*from ww w .j a v a2 s. co m*/ EuclidianClassifier buttockWorker; EuclidianClassifier genitalWorker; ClassificationResult classificationResult; ExecutorService executor; bodyWomanDescriptorService.openDatabase(new File(this.databaseName)); BodyPartDescriptor nudeChestDescriptor = bodyWomanDescriptorService .findNudeBodyPartDescriptorByName("Chest"); BodyPartDescriptor notNudeChestDescriptor = bodyWomanDescriptorService .findNotNudeBodyPartDescriptorByName("Chest"); BodyPartDescriptor nudeButtockDescriptor = bodyWomanDescriptorService .findNudeBodyPartDescriptorByName("Buttock"); BodyPartDescriptor notNudeButtockDescriptor = bodyWomanDescriptorService .findNotNudeBodyPartDescriptorByName("Buttock"); BodyPartDescriptor nudeGenitalDescriptor = bodyWomanDescriptorService .findNudeBodyPartDescriptorByName("Genital"); BodyPartDescriptor notNudeGenitalDescriptor = bodyWomanDescriptorService .findNotNudeBodyPartDescriptorByName("Genital"); fileList = OCIUtils.getImageFiles(this.inputDir); List<EuclidianClassifier> classifiers = new ArrayList(); for (String imagePath : fileList) { startTime = System.currentTimeMillis(); try { System.out.println( "-------------------------------------------------------------------------------------"); System.out.println("Classifying image...: ".concat(imagePath)); System.out.println( "-------------------------------------------------------------------------------------"); BufferedImage img = ImageIO.read(new File(imagePath)); ImageProcessor imageProcessor = new ImageProcessor(img); imageProcessorService = new ImageProcessorService(imageProcessor); List<BufferedImage> partImageList = imageProcessorService.getSubImages(128); //Create new thread pool to each image file executor = Executors.newFixedThreadPool(10); for (BufferedImage subImg : partImageList) { chestWorker = new EuclidianClassifier(nudeChestDescriptor, notNudeChestDescriptor, subImg, this.kernelSize); chestWorker.setClassificationLevel(this.classificationLevel); executor.execute(chestWorker); classifiers.add(chestWorker); buttockWorker = new EuclidianClassifier(nudeButtockDescriptor, notNudeButtockDescriptor, subImg, this.kernelSize); buttockWorker.setClassificationLevel(this.classificationLevel); executor.execute(buttockWorker); classifiers.add(buttockWorker); genitalWorker = new EuclidianClassifier(nudeGenitalDescriptor, notNudeGenitalDescriptor, subImg, this.kernelSize); genitalWorker.setClassificationLevel(this.classificationLevel); executor.execute(genitalWorker); classifiers.add(genitalWorker); } //Wait finish executor.shutdown(); while (!executor.isTerminated()) { } classificationResult = printResult(classifiers); classificationResult.setFileName(imagePath); endTime = System.currentTimeMillis(); classificationResult.setExecutionTime(endTime - startTime); classificationResults.add(classificationResult); classifiers.clear(); } catch (IOException ex) { Logger.getLogger(BodyWomanNudeClassifier.class.getName()).log(Level.SEVERE, null, ex); } } System.out.println("--------------------------------------------------------"); System.out.println("Total time.: " + (totalTime) + " ms."); System.out.println("--------------------------------------------------------"); }
From source file:algo.PlotBar.java
/** * Creates new form Algorithm/*w w w . j a v a 2 s. c o m*/ * * @throws java.io.IOException */ public Algorithm() throws IOException { setTitle("Algorithm Simulation"); initComponents(); BufferedImage wPic = ImageIO.read(ClassLoader.getSystemResource("algo/res/bubbles.jpg")); imageLabel.setIcon(new ImageIcon(wPic)); }
From source file:org.daybreak.coccinella.webmagic.ImageDownloader.java
@Override public Page download(Request request, Task task) { Site site = null;// w ww . jav a2s . c o m if (task != null) { site = task.getSite(); } Set<Integer> acceptStatCode; String charset = null; Map<String, String> headers = null; if (site != null) { acceptStatCode = site.getAcceptStatCode(); charset = site.getCharset(); headers = site.getHeaders(); } else { acceptStatCode = Sets.newHashSet(200); } logger.info("downloading image " + request.getUrl()); RequestBuilder requestBuilder; if (request instanceof CrawlerRequest) { CrawlerRequest crawlerRequest = (CrawlerRequest) request; try { requestBuilder = RequestBuilder.post().setUri(crawlerRequest.getUrl()) .setEntity(crawlerRequest.createEntity()); } catch (UnsupportedEncodingException ex) { logger.warn("The encoding is not supported: " + crawlerRequest.getCrawler().getEncode()); return null; } } else { requestBuilder = RequestBuilder.get().setUri(request.getUrl()); } if (headers != null) { for (Map.Entry<String, String> headerEntry : headers.entrySet()) { requestBuilder.addHeader(headerEntry.getKey(), headerEntry.getValue()); } } RequestConfig.Builder requestConfigBuilder = RequestConfig.custom() .setConnectionRequestTimeout(site.getTimeOut()).setSocketTimeout(site.getTimeOut()) .setConnectTimeout(site.getTimeOut()).setCookieSpec(CookieSpecs.BEST_MATCH); if (site != null && site.getHttpProxy() != null) { requestConfigBuilder.setProxy(site.getHttpProxy()); } requestBuilder.setConfig(requestConfigBuilder.build()); CloseableHttpResponse httpResponse = null; try { httpResponse = getHttpClient(site).execute(requestBuilder.build()); int statusCode = httpResponse.getStatusLine().getStatusCode(); if (acceptStatCode.contains(statusCode)) { ImagePage imagePage = new ImagePage(ImageIO.read(httpResponse.getEntity().getContent())); imagePage.setRawText(""); imagePage.setUrl(new PlainText(request.getUrl())); imagePage.setRequest(request); imagePage.setStatusCode(httpResponse.getStatusLine().getStatusCode()); return imagePage; } else { logger.warn("code error " + statusCode + "\t" + request.getUrl()); return null; } } catch (IOException e) { logger.warn("download image " + request.getUrl() + " error", e); if (site.getCycleRetryTimes() > 0) { return addToCycleRetry(request, site); } return null; } finally { try { if (httpResponse != null) { //ensure the connection is released back to pool EntityUtils.consume(httpResponse.getEntity()); } } catch (IOException e) { logger.warn("close response fail", e); } } }
From source file:com.tools.image.IMagicHelper.java
private static int[] getRectangle(String file) throws IOException { BufferedImage tmp = ImageIO.read(new File(file)); return new int[] { tmp.getWidth(), tmp.getHeight() }; }
From source file:net.semanticmetadata.lire.solr.AddImages.java
private static StringBuilder createAddDoc(File image) throws IOException { BufferedImage img = ImageIO.read(image); StringBuilder result = new StringBuilder(200); // result.append("<add>\n"); result.append("\t<doc>\n"); // id and file name ... result.append("\t\t<field name=\"id\">"); result.append(image.getCanonicalPath()); result.append("</field>\n"); result.append("\t\t<field name=\"title\">"); result.append(image.getName());/*from w w w. ja va2 s .c o m*/ result.append("</field>\n"); // features: getFields(img, result, new ColorLayout(), "cl_hi", "cl_ha"); getFields(img, result, new EdgeHistogram(), "eh_hi", "eh_ha"); getFields(img, result, new JCD(), "jc_hi", "jc_ha"); getFields(img, result, new PHOG(), "ph_hi", "ph_ha"); getFields(img, result, new OpponentHistogram(), "oh_hi", "oh_ha"); // close doc ... result.append("\t</doc>\n"); // result.append("</add>"); return result; }