<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    江蘇520

    江蘇520

    常用鏈接

    統(tǒng)計(jì)

    最新評論

    java利用jmf實(shí)現(xiàn)拍照功能

    首先到SUN下載最新的JMF,然后安裝。http://java.sun.com/products/java-media/jmf/index.jsp         http://www.bt285.cn  

    然后,說一下需求

    1. 用攝像頭拍照

    2. 在文本框輸入文件名

    3. 按下拍照按鈕,獲取攝像頭內(nèi)的圖像

    4. 在拍下的照片上有一紅框截取固定大小的照片。

    5. 保存為本地圖像為jpg格式,不得壓縮畫質(zhì)

    技術(shù)關(guān)鍵,相信也是大家最感興趣的部分也就是如何讓一個攝像頭工作,并拍下一張照片了。

    利用JMF,代碼很簡單:

    //利用這三個類分別獲取攝像頭驅(qū)動,和獲取攝像頭內(nèi)的圖像流,獲取到的圖像流是一個Swing的Component組件類

     

    public static Player player = null;
                  private CaptureDeviceInfo di = null;
                  private MediaLocator ml = null;
                  String str1 = "vfw:Logitech USB Video Camera:0";
                  String str2 = "vfw:Microsoft WDM Image Capture (Win32):0";
                  di = CaptureDeviceManager.getDevice(str2);
                  ml = di.getLocator();
                  try
                  {
                  player = Manager.createRealizedPlayer(ml);
                  player.start();
                  Component comp;
                  if ((comp = player.getVisualComponent()) != null)
                  {
                  add(comp, BorderLayout.NORTH);
                  }
                  }
                  catch (Exception e)
                  {
                  e.printStackTrace();
                  }

    接下來就是點(diǎn)擊拍照,獲取攝像頭內(nèi)的當(dāng)前圖像。

    代碼也是很簡單:

     

     private JButton capture;
                  private Buffer buf = null;
                  private BufferToImage btoi = null;
                  private ImagePanel imgpanel = null;
                  private Image img = null;
                  private ImagePanel imgpanel = null;
                  JComponent c = (JComponent) e.getSource();
                  if (c == capture)//如果按下的是拍照按鈕 http://www.5a520.cn
                  {
                  FrameGrabbingControl fgc =(FrameGrabbingControl)player.getControl
                ("javax.media.control.FrameGrabbingControl");
                  buf = fgc.grabFrame(); // 獲取當(dāng)前禎并存入Buffer類 http://www.bt285.cn
                  btoi = new BufferToImage((VideoFormat) buf.getFormat());
                  img = btoi.createImage(buf); // show the image
                  imgpanel.setImage(img);
                  }

    保存圖像的就不多說了,以下為示例代碼

     

     BufferedImage bi = (BufferedImage) createImage(imgWidth, imgHeight);
                  Graphics2D g2 = bi.createGraphics();
                  g2.drawImage(img, null, null);
                  FileOutputStream out = null;
                  try
                  {
                  out = new FileOutputStream(s);
                  }
                  catch (java.io.FileNotFoundException io)
                  {
                  System.out.println("File Not Found");
                  }
                  JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
                  JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);
                  param.setQuality(1f, false);//不壓縮圖像 http://www.bt285.cn
                  encoder.setJPEGEncodeParam(param);
                  try
                  {
                  encoder.encode(bi);
                  out.close();
                  }
                  catch (java.io.IOException io)
                  {
                  System.out.println("IOException");
                  }

    已經(jīng)申請將JWebCam建立為一個開源項(xiàng)目,放到GRO,大家發(fā)揮自己的想象力加入自己的代碼吧,比如拍攝視頻,添加圖像處理功能,等等

    posted on 2009-05-21 21:03 江蘇520 閱讀(1679) 評論(0)  編輯  收藏

    主站蜘蛛池模板: 亚洲天天在线日亚洲洲精| 精品亚洲一区二区三区在线观看| 亚洲AV无码专区国产乱码4SE| 一级毛片免费全部播放| 免费又黄又爽的视频| 国产亚洲视频在线观看| 午夜亚洲福利在线老司机| 特级无码毛片免费视频| 亚洲人成电影在线播放| 中文字幕免费观看全部电影| 国产亚洲AV手机在线观看| 国产免费一区二区三区不卡| 亚洲大尺度无码无码专区| 91精品国产免费| 亚洲熟妇久久精品| 国产一级特黄高清免费大片| 四虎影视久久久免费观看| 中文字幕亚洲乱码熟女一区二区 | 亚洲欧洲日产国码无码网站| 成在人线av无码免费高潮水| 亚洲a一级免费视频| 无遮免费网站在线入口| 久久亚洲中文字幕无码| 亚洲色爱图小说专区| 18pao国产成视频永久免费| 中文日韩亚洲欧美制服| 亚洲精品第一国产综合精品99| 久久久精品国产亚洲成人满18免费网站 | 黄色一级毛片免费看| 久久精品国产亚洲AV网站| 免费成人激情视频| 老司机午夜在线视频免费观| 国产AV无码专区亚洲Av| 国产成人A在线观看视频免费| 一级毛片aa高清免费观看| 亚洲视频在线观看网站| 国产免费私拍一区二区三区| 免费成人在线视频观看| 久久亚洲精品无码gv| 亚洲成人精品久久| 五月天婷亚洲天综合网精品偷|