<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)  編輯  收藏

    主站蜘蛛池模板: 天天操夜夜操免费视频| 久久青草91免费观看| 成年女人18级毛片毛片免费| 亚洲一卡2卡三卡4卡无卡下载| 免费成人在线电影| 久久伊人久久亚洲综合| 亚洲成人黄色网址| 九九视频高清视频免费观看| 日韩精品视频免费在线观看| 亚洲AV无码国产精品永久一区| 在线观看亚洲免费| 男人扒开添女人下部免费视频| 国产成人亚洲精品狼色在线| aa级女人大片喷水视频免费| 亚洲人成图片小说网站| 久久久久国色av免费看| 亚洲欧洲久久久精品| 91免费在线视频| 亚洲精品无码成人片在线观看 | 亚洲成aⅴ人在线观看| 青青青国产在线观看免费| 亚洲色欲色欱wwW在线| heyzo亚洲精品日韩| 最近中文字幕大全免费版在线 | 亚洲中文无码亚洲人成影院| 破了亲妺妺的处免费视频国产| 无码的免费不卡毛片视频| 亚洲精品乱码久久久久久蜜桃不卡| 亚洲午夜精品一区二区麻豆| 国产伦精品一区二区三区免费迷 | 亚洲AV电影院在线观看| 久久不见久久见免费视频7| 亚洲三区在线观看无套内射| 久久免费的精品国产V∧| 亚洲狠狠成人综合网| 亚洲精品动漫人成3d在线 | 亚洲乱码一二三四区乱码| 日本久久久免费高清| 青青操在线免费观看| 亚洲综合精品第一页| 亚洲视频在线免费|