当前位置: 首页 > wzjs >正文

可以做立体图形的网站百度排名优化软件

可以做立体图形的网站,百度排名优化软件,卢湾郑州阳网站建设,网站开发的流程图文章目录 调用摄像头录制视频录制带音频的视频人脸识别人脸64关键点 调用摄像头 public class Camera {public static void main(String[] args) throws FrameGrabber.Exception {// 开启抓取器OpenCVFrameGrabber grabber new OpenCVFrameGrabber(0);grabber.start();// 开启…

文章目录

  • 调用摄像头
  • 录制视频
  • 录制带音频的视频
  • 人脸识别
  • 人脸64关键点

调用摄像头

public class Camera {public static void main(String[] args) throws FrameGrabber.Exception {// 开启抓取器OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);grabber.start();// 开启窗口CanvasFrame canvasFrame = new CanvasFrame("OpenCV Frame");canvasFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);canvasFrame.setAlwaysOnTop(true);// 设置窗口大小canvasFrame.setCanvasSize(800, 600);// 循环展示while (canvasFrame.isVisible()) {canvasFrame.showImage(grabber.grab());}grabber.close();//关闭抓取器}
}

录制视频

public class Recording {private static final String FILE_NAME = "D://recording.mp4";@SuppressWarnings("resource")public static void main(String[] args) throws FrameGrabber.Exception, FrameRecorder.Exception {// 开启抓取器OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);grabber.start();//转换器,抓取一帧视频并将其转换为图像OpenCVFrameConverter<IplImage> converter = new OpenCVFrameConverter.ToIplImage();IplImage iplImage = converter.convertToIplImage(grabber.grab());// 开启录制器OpenCVFrameRecorder recorder = new OpenCVFrameRecorder(FILE_NAME, iplImage.width(), iplImage.height());recorder.setVideoCodec(avcodec.AV_CODEC_ID_MPEG4);recorder.setFormat("mp4");recorder.start();// 开启窗口CanvasFrame canvasFrame = new CanvasFrame("OpenCV Frame");canvasFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);canvasFrame.setAlwaysOnTop(true);// 设置窗口大小canvasFrame.setCanvasSize(iplImage.width(), iplImage.height());// 循环展示Frame image;while (canvasFrame.isVisible()) {image = grabber.grab();canvasFrame.showImage(image);recorder.record(image);}recorder.close();// 关闭推流录制器,close包含release和stop操作grabber.close();// 关闭抓取器}
}

录制带音频的视频

public class Audio {// 采样率private final static int SAMPLE_RATE = 44100;// 音频通道数,2表示立体声private final static int CHANNEL_NUM = 2;private static final String FILE_NAME = "D://recording.mp4";@SuppressWarnings("resource")public static void main(String[] args) throws FrameGrabber.Exception, FrameRecorder.Exception, LineUnavailableException {// 音频格式的参数AudioFormat audioFormat = new AudioFormat(SAMPLE_RATE, 16, CHANNEL_NUM, true, false);// 获取数据线所需的参数DataLine.Info dataLineInfo = new DataLine.Info(TargetDataLine.class, audioFormat);// 从音频捕获设备取得其数据的数据线,之后的音频数据就从该数据线中获取TargetDataLine line = (TargetDataLine) AudioSystem.getLine(dataLineInfo);line.open(audioFormat);// 数据线与音频数据的IO建立联系line.start();// 每次取得的原始数据大小final int audioBufferSize = SAMPLE_RATE * CHANNEL_NUM;// 初始化数组,用于暂存原始音频采样数据byte[] audioBytes = new byte[audioBufferSize];// 开启抓取器OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);grabber.start();//转换器,抓取一帧视频并将其转换为图像OpenCVFrameConverter<IplImage> converter = new OpenCVFrameConverter.ToIplImage();IplImage iplImage = converter.convertToIplImage(grabber.grab());// 开启录制器FFmpegFrameRecorder recorder = new FFmpegFrameRecorder(FILE_NAME, iplImage.width(), iplImage.height());recorder.setVideoCodec(avcodec.AV_CODEC_ID_MPEG4);recorder.setFormat("mp4");// 码率恒定recorder.setAudioOption("crf", "0");// 最高音质recorder.setAudioQuality(0);// 192 Kbpsrecorder.setAudioBitrate(192000);// 采样率recorder.setSampleRate(SAMPLE_RATE);// 立体声recorder.setAudioChannels(2);// 编码器recorder.setAudioCodec(avcodec.AV_CODEC_ID_AAC);recorder.start();// 开启窗口CanvasFrame canvasFrame = new CanvasFrame("OpenCV Frame");canvasFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);canvasFrame.setAlwaysOnTop(true);// 设置窗口大小canvasFrame.setCanvasSize(iplImage.width(), iplImage.height());// 循环展示Frame image;while (canvasFrame.isVisible()) {image = grabber.grab();canvasFrame.showImage(image);recorder.record(image);int nBytesRead = line.read(audioBytes, 0, line.available());// 采样数据是16比特,也就是2字节,对应的数据类型就是short,// 所以准备一个short数组来接受原始的byte数组数据// short是2字节,所以数组长度就是byte数组长度的二分之一int nSamplesRead = nBytesRead / 2;short[] samples = new short[nSamplesRead];// 两个byte放入一个short中的时候,谁在前谁在后?这里用LITTLE_ENDIAN指定拜访顺序,ByteBuffer.wrap(audioBytes).order(ByteOrder.LITTLE_ENDIAN).asShortBuffer().get(samples);// 将short数组转为ShortBuffer对象,因为帧录制器的入参需要该类型ShortBuffer sBuff = ShortBuffer.wrap(samples, 0, nSamplesRead);// 音频帧交给帧录制器输出recorder.recordSamples(SAMPLE_RATE, CHANNEL_NUM, sBuff);}recorder.close();// 关闭推流录制器,close包含release和stop操作grabber.close();// 关闭抓取器}
}

人脸识别

public class Face {@SuppressWarnings("resource")public static void main(String[] args) throws FrameGrabber.Exception {CascadeClassifier cascadeClassifier = new CascadeClassifier("D:\\Workspace\\javacv-demo\\src\\main\\resources\\haarcascade_frontalface_alt.xml");OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);grabber.start();// 转换器,抓取一帧视频并将其转换为图像,获取图像大小OpenCVFrameConverter.ToIplImage imageConverter = new OpenCVFrameConverter.ToIplImage();Frame grab = grabber.grab();IplImage iplImage = imageConverter.convertToIplImage(grab);OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat();// 开启窗口CanvasFrame canvasFrame = new CanvasFrame("OpenCV Frame");canvasFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);canvasFrame.setAlwaysOnTop(true);// 设置窗口大小canvasFrame.setCanvasSize(iplImage.width(), iplImage.height());// 循环展示Frame frame;while (canvasFrame.isVisible()) {frame = grabber.grab();Mat image = converter.convertToMat(frame);RectVector faces = new RectVector();cascadeClassifier.detectMultiScale(image, faces);for (int i = 0; i < faces.size(); i++) {opencv_imgproc.rectangle(image, faces.get(i), new Scalar().green(255));}canvasFrame.showImage(frame);}grabber.close();// 关闭抓取器}
}

人脸64关键点

public class FacemarkDemo {@SuppressWarnings("resource")public static void main(String[] args) throws FrameGrabber.Exception {CascadeClassifier cascadeClassifier = new CascadeClassifier("D:\\Workspace\\javacv-demo\\src\\main\\resources\\haarcascade_frontalface_alt.xml");Facemark facemark = createFacemarkLBF();facemark.loadModel("D:\\Workspace\\javacv-demo\\src\\main\\resources\\lbfmodel.yaml");OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);grabber.start();// 转换器,抓取一帧视频并将其转换为图像,获取图像大小OpenCVFrameConverter.ToIplImage imageConverter = new OpenCVFrameConverter.ToIplImage();Frame grab = grabber.grab();IplImage iplImage = imageConverter.convertToIplImage(grab);OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat();// 开启窗口CanvasFrame canvasFrame = new CanvasFrame("OpenCV Frame");canvasFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);// 设置窗口大小canvasFrame.setCanvasSize(iplImage.width(), iplImage.height());// 循环展示Frame frame;while (canvasFrame.isVisible()) {frame = grabber.grab();Mat image = converter.convertToMat(frame);RectVector faces = new RectVector();cascadeClassifier.detectMultiScale(image, faces);Point2fVectorVector landmarks = new Point2fVectorVector();if (!image.empty() && faces.size() > 0) {facemark.fit(image, faces, landmarks);for (int i = 0; i < landmarks.size(); i++) {drawFacemarks(image, landmarks.get(i), new Scalar().red(255));}}for (int i = 0; i < faces.size(); i++) {opencv_imgproc.rectangle(image, faces.get(i), new Scalar().green(255));}canvasFrame.showImage(frame);}grabber.close();// 关闭抓取器}
}
http://www.dtcms.com/wzjs/76180.html

相关文章:

  • 南溪门户网seo快速排名多少钱
  • 苏州那家公司做网站好佛山seo
  • 机械行业营销型网站长沙网站建站模板
  • 深圳博彩软件网站建设抖音搜索引擎推广
  • 图片发到哪些网站 seo网上营销网站
  • 求网站建设关键词林俊杰无损下载
  • 阿里巴巴网站建设过程人工在线客服系统
  • 期刊网站建设一呼百应推广平台
  • 枣庄住房和城乡建设局网站谷歌google play下载
  • 做网站的网址软文推广案例500字
  • 个人英文网站设计营销型网站特点
  • wordpress get_banner_slide北京谷歌seo
  • 推广公众号的9种方法谷歌seo站内优化
  • 网站建设教案搜易网服务介绍
  • 广州中国建设银行网站首页服装店营销策划方案
  • 手机网站建设网站报价企业如何网络推广
  • it项目外包网标题seo是什么意思
  • b2b外贸网站建设电脑系统优化软件十大排名
  • 做诈骗网站犯什么法搜索引擎营销的基本流程
  • 莱芜网站制作哪家好seo的概念
  • 聚云测网站怎么做的口碑营销的经典案例
  • 男女做a视频网站推广信息发布平台
  • 公司有些网站打不开搜索引擎优化的七个步骤
  • 使用wordpress的企业seo推广排名平台有哪些
  • 建筑模型网站环球网广东疫情最新消息
  • 网站设计开发方案安卓优化大师官网
  • 焦作北京网站建设软文是什么
  • 织梦cms怎么打不开网站免费建站系统
  • 电脑自带的做网站叫什么软件网络推广软件哪个好
  • 国务院建设行政主管部门网站百度app登录