
图像处理
Howardk
这个作者很懒,什么都没留下…
展开
-
基于Qt的OpenCV人脸识别(一)
OpenCV对图像处理非常专业,具有很多模块。但是其GUI模块(即highgui),交互性非常差,就连按钮也得用滑动条来实现。而Qt这个强大的c++图形库很好的避免了这个缺点,因此笔者基于Qt平台,调用OpenCV库,来进行OpenCV的人脸识别开发。 工欲善其事,必先利其器,要想完成开发,先得在Qt上搭建OpenCV的开发环境,如何编译OpenCV得到动态链接库这...原创 2018-12-01 12:28:13 · 8011 阅读 · 10 评论 -
ffmpeg常用基本命令
1.分离视频音频流ffmpeg.exe -i input.avi -vn output.mp3 //分离音频ffmpeg.exe -i input.avi -an output.avi //分离视频2.视频剪切ffmpeg.exe -ss 0:0:10 -t 0:0:5 -i input.mp3 -c copy output.mp3//-ss 起始时间//-t 持续时间 ...转载 2018-12-26 21:44:40 · 186 阅读 · 0 评论 -
OpenCV 录制视频
使用OpenCV打开摄像头,并进行录制。 #include <opencv2/opencv.hpp>#include <iostream>using namespace cv;using namespace std;int main(int argc, char** argv) { VideoCapture cam(0); if (!cam.isOpe...转载 2018-12-26 20:45:37 · 6447 阅读 · 2 评论 -
OpenCV视频播放操作
使用VideoCapture类实现视频播放:#include <opencv2/opencv.hpp>#include <iostream>using namespace cv;using namespace std;int main(int argc, char** argv) { VideoCapture video; video.open("te...原创 2018-12-26 15:57:29 · 242 阅读 · 0 评论 -
图像缩放算法——近邻取样插值
近邻取样插值原理:对于缩放后图片中的某点 (Dx, Dy) 对应于原图片中的点 (Sx, Sy),它们之间存在如下的比例关系: (Sx-0)/(SW-0)=(Dx-0)/(DW-0) (Sy-0)/(SH-0)=(Dy-0)/(DH-0) 因此,已知缩放后图片中的任意一点 (Dx, Dy),可以求得其对应的原图片中的点Sx=Dx*SW/DW,Sy=Dy*SH/DH。...原创 2018-12-26 12:24:51 · 1525 阅读 · 0 评论 -
通过ROI实现图像并排合并
#include <opencv2/opencv.hpp>#include <iostream>using namespace cv;using namespace std;int main(int argc, char *argv[]){ Mat img1 = imread("1.png"); Mat img2 = imread("2.png"); ...转载 2018-12-26 13:52:16 · 706 阅读 · 1 评论 -
基于Qt的OpenCV人脸识别(四)
上篇进行了人脸的检测,现在进行人脸的识别,采用OpenCV的face320模块里的EigenFace算法。在进行检测之间,得制作被检测人的人脸数据,这是捕获按钮就起到了作用,进行人脸数据的拍摄,//拍摄人脸void Widget::on_btn_cap_clicked(){ Mat dst; for (int i = 0; i < faces.size(); i++...原创 2018-12-01 14:51:04 · 10616 阅读 · 10 评论 -
基于Qt的OpenCV人脸识别(三)
上篇完成了Qt调用OpenCV的摄像头,接下来要做的是基于拍摄到的图片进行人脸检测。使用OpenCV的级联检测器HAAR人脸检测,首先在Qt的初始化函数中加载人脸模型://初始化void Widget::Init(){ //加载人脸检测模型 if(!faceDetector.load("../facerecog2/haarcascade_frontalface_alt.x...原创 2018-12-01 14:22:14 · 3502 阅读 · 0 评论 -
基于Qt的OpenCV人脸识别(二)
经过上篇的qt环境配置,现在可以进行开发了。首先进行总体的界面设计,界面的控件选择及界面如下:单击打开摄像头按钮右键,转到槽,OpenCV打开摄像头操作槽函数代码如下://打开摄像头void Widget::on_btn_open_clicked(){ //打开摄像头 if (capture.isOpened()) return; c...原创 2018-12-01 13:58:31 · 3518 阅读 · 3 评论 -
积分图像
前言: 有时候只需要计算图像中某个特定区域的直方图。实际上累计图像的某个子区域内的像素总和,是很多计算机视觉算法中常见的过程。现在假设需要对图像中的多个兴趣区域计算几个此类直方图。这些计算过程都马上会变得非常耗时。这种情况下,有一个工具可以极大地提高统计图像子区域像素的效率:积分图像。一、积分图像的原理 为了理解积分图像的实现原理,我们先对它下一个定义。取图像左上...转载 2019-03-14 21:05:03 · 1072 阅读 · 0 评论