文章目录

  • 目标
    • 代码
    • VideoCapture
      • 接口
      • 参数
    • get
      • 接口
      • 参数
    • set
      • 原型
    • VideoWriter
    • 扩展信息
      • 运行时选择后端API
      • 使能后端API
      • 第三方驱动和相机
      • FFmpeg
    • 【参考】

目标

  1. 视频读入
  2. 视频显示
  3. 视频保存

代码

# 导入库
import numpy as np
import cv2 # 从摄像头读取视频
cap = cv2.VideoCapture(0)
# 从文件读取视频
# cap = cv2.VideoCapture('testvideo.avi')# 打开失败则退出
if not cap.isOpened():print("Cannot open camera")exit()# 定义保存视频的编码格式、分辨率和帧率等信息
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi', fourcc, 20.0, (640,  480))# 循环读取视频并显示视频
while True:  # 获取每一帧ret, frame = cap.read()# 获得帧图像,则返回 Trueif not ret:print("Can't receive frame (stream end?). Exiting ...")break# 显示每一帧cv2.imshow('frame', frame)# 保存视频out.write(frame)# 按 q 键退出if cv2.waitKey(1) == ord('q'):break# 释放句柄和销毁窗口
cap.release()
out.release()
cv2.destroyAllWindows()

cap = cv2.VideoCapture(0) 创建一个 VideoCapture 的对象,参数可以是设备的编号(相机编号,一般如果只有一个摄像头,设置为0即可,如果有多个摄像头,可以选择编号),也可以是视频文件。读取完后,可以一帧一帧的抓取视频帧,最后别忘了释放定义的 VideoCapture 的对象 cap

VideoCapture

接口


cv::VideoCapture::VideoCapture(); // 默认构造
cv::VideoCapture::VideoCapture(const String & filename, int apiPreference=CAP_ANY); //
cv::VideoCapture::VideoCapture(const String & filename, int apiPreference, const std::vector<int>& params);
cv::VideoCapture::VideoCapture(int index, int apiPreference=CAP_ANY);
cv::VideoCapture::VideoCapture(int index, int apiPreference, const std::vector<int>& params);
cv.VideoCapture() ->  <VideoCapture object>
cv.VideoCapture(filename[, apiPreference]) ->    <VideoCapture object>
cv.VideoCapture(filename, apiPreference, params) ->  <VideoCapture object>
cv.VideoCapture(index[, apiPreference]) ->   <VideoCapture object>
cv.VideoCapture(index, apiPreference, params) -> <VideoCapture object>

参数

filename:
- 视频名: video.avi, etc…
- 图像序列:img_%02d.jpg
- 视频流的URL:protocol://host:port/script_name?script_params|auth
- IP相机的URL,

index: 视频设备序列号

apiPreference: 首选实现 capture 的API方式,如:cv::CAP_FFMPEG or cv::CAP_IMAGES or cv::CAP_DSHOW.

后端Capture方式 描述
CAP_ANY Python: cv2.CAP_ANY Auto detect == 0.
CAP_VFW Python: cv2.CAP_VFW Video For Windows (obsolete, removed)
CAP_V4L Python: cv2.CAP_V4L V4L/V4L2 capturing support.
CAP_V4L2 Python: cv2.CAP_V4L2 Same as CAP_V4L.
CAP_FIREWIRE Python: cv2.CAP_FIREWIRE IEEE 1394 drivers.
CAP_FIREWARE Python: cv2.CAP_FIREWARE Same value as CAP_FIREWIRE.
CAP_IEEE1394 Python: cv2.CAP_IEEE1394 Same value as CAP_FIREWIRE.
CAP_DC1394 Python: cv2.CAP_DC1394 Same value as CAP_FIREWIRE.
CAP_CMU1394 Python: cv2.CAP_CMU1394 Same value as CAP_FIREWIRE.
CAP_QT Python: cv2.CAP_QT QuickTime (obsolete, removed)
CAP_UNICAP Python: cv2.CAP_UNICAP Unicap drivers (obsolete, removed)
CAP_DSHOW Python: cv2.CAP_DSHOW DirectShow (via videoInput)
CAP_PVAPI Python: cv2.CAP_PVAPI PvAPI, Prosilica GigE SDK.
CAP_OPENNI Python: cv2.CAP_OPENNI OpenNI (for Kinect)
CAP_OPENNI_ASUS Python: cv2.CAP_OPENNI_ASUS OpenNI (for Asus Xtion)
CAP_ANDROID Python: cv2.CAP_ANDROID Android - not used.
CAP_XIAPI Python: cv2.CAP_XIAPI XIMEA Camera API.
CAP_AVFOUNDATION Python: cv2.CAP_AVFOUNDATION AVFoundation framework for iOS (OS X Lion will have the same API)
CAP_GIGANETIX Python: cv2.CAP_GIGANETIX Smartek Giganetix GigEVisionSDK.
CAP_MSMF Python: cv2.CAP_MSMF Microsoft Media Foundation (via videoInput)
CAP_WINRT Python: cv2.CAP_WINRT Microsoft Windows Runtime using Media Foundation.
CAP_INTELPERC Python: cv2.CAP_INTELPERC Synonym for CAP_INTELPERC.
CAP_REALSENSE Python: cv2.CAP_REALSENSE RealSense (former Intel Perceptual Computing SDK)
CAP_OPENNI2 Python: cv2.CAP_OPENNI2 OpenNI2 (for Kinect)
CAP_OPENNI2_ASUS Python: cv2.CAP_OPENNI2_ASUS OpenNI2 (for Asus Xtion and Occipital Structure sensors)
CAP_OPENNI2_ASTRA Python: cv2.CAP_OPENNI2_ASTRA OpenNI2 (for Orbbec Astra)
CAP_GPHOTO2 Python: cv2.CAP_GPHOTO2 gPhoto2 connection
CAP_GSTREAMER Python: cv2.CAP_GSTREAMER GStreamer.
CAP_FFMPEG Python: cv2.CAP_FFMPEG Open and record video file or stream using the FFMPEG library.
CAP_IMAGES Python: cv2.CAP_IMAGES OpenCV Image Sequence (e.g. img_%02d.jpg)
CAP_ARAVIS Python: cv2.CAP_ARAVIS Aravis SDK.
CAP_OPENCV_MJPEG Python: cv2.CAP_OPENCV_MJPEG Built-in OpenCV MotionJPEG codec.
CAP_INTEL_MFX Python: cv2.CAP_INTEL_MFX Intel MediaSDK.
CAP_XINE Python: cv2.CAP_XINE XINE engine (Linux)
CAP_UEYE Python: cv2.CAP_UEYE uEye Camera API

get

接口

virtual double cv::VideoCapture::get(int propId);
cv.VideoCapture.get(propId) ->    retval

参数

propId: 属性ID号

set

原型

virtual bool cv::VideoCapture::set(int propId, double value);
cv.VideoCapture.set( propId, value   ) -> retval

ID列表如下

属性ID号 描述
CAP_PROP_POS_MSEC Python: cv2.CAP_PROP_POS_MSEC 视频文件当前的位置(ms)
CAP_PROP_POS_FRAMES Python: cv2.CAP_PROP_POS_FRAMES 从0开始的视频帧号
CAP_PROP_POS_AVI_RATIO Python: cv2.CAP_PROP_POS_AVI_RATIO 视频文件的相对位置 0开始,1结束
CAP_PROP_FRAME_WIDTH Python: cv2.CAP_PROP_FRAME_WIDTH 视频帧的宽
CAP_PROP_FRAME_HEIGHT Python: cv2.CAP_PROP_FRAME_HEIGHT 视频帧的高
CAP_PROP_FPS Python: cv2.CAP_PROP_FPS 帧率
CAP_PROP_FOURCC Python: cv2.CAP_PROP_FOURCC 4个字符的编码代号. seeVideoWriter::fourcc .
CAP_PROP_FRAME_COUNT Python: cv2.CAP_PROP_FRAME_COUNT 帧的数量
CAP_PROP_FORMAT Python: cv2.CAP_PROP_FORMAT Mat对象的格式 (seeMat::type()) returned by VideoCapture::retrieve(). Set value -1 to fetch undecoded RAW video streams (as Mat 8UC1).
CAP_PROP_MODE Python: cv2.CAP_PROP_MODE 后端特定实现值指示当前捕获模式
CAP_PROP_BRIGHTNESS Python: cv2.CAP_PROP_BRIGHTNESS 图像的亮度值 (only for those cameras that support).
CAP_PROP_CONTRAST Python: cv2.CAP_PROP_CONTRAST 图像的对比度 (only for cameras).
CAP_PROP_SATURATION Python: cv2.CAP_PROP_SATURATION 图像的饱和度 (only for cameras).
CAP_PROP_HUE Python: cv2.CAP_PROP_HUE 图像的色调 (only for cameras).
CAP_PROP_GAIN Python: cv2.CAP_PROP_GAIN 图像的增益 (only for those cameras that support).
CAP_PROP_EXPOSURE Python: cv2.CAP_PROP_EXPOSURE 曝光时间 (only for those cameras that support).
CAP_PROP_CONVERT_RGB Python: cv2.CAP_PROP_CONVERT_RGB 布尔值表明是否必须转换RGB ``GStreamer note : The flag is ignored in case if custom pipeline is used. It’s user responsibility to interpret pipeline output.
CAP_PROP_WHITE_BALANCE_BLUE_U Python: cv2.CAP_PROP_WHITE_BALANCE_BLUE_U Currently unsupported.
CAP_PROP_RECTIFICATION Python: cv2.CAP_PROP_RECTIFICATION 立体相机的矫正标志 (note: only supported by DC1394 v 2.x backend currently).
CAP_PROP_MONOCHROME Python: cv2.CAP_PROP_MONOCHROME
CAP_PROP_SHARPNESS Python: cv2.CAP_PROP_SHARPNESS
CAP_PROP_AUTO_EXPOSURE Python: cv2.CAP_PROP_AUTO_EXPOSURE DC1394: exposure control done by camera, user can adjust reference level using this feature.
CAP_PROP_GAMMA Python: cv2.CAP_PROP_GAMMA
CAP_PROP_TEMPERATURE Python: cv2.CAP_PROP_TEMPERATURE
CAP_PROP_TRIGGER Python: cv2.CAP_PROP_TRIGGER
CAP_PROP_TRIGGER_DELAY Python: cv2.CAP_PROP_TRIGGER_DELAY
CAP_PROP_WHITE_BALANCE_RED_V Python: cv2.CAP_PROP_WHITE_BALANCE_RED_V
CAP_PROP_ZOOM Python: cv2.CAP_PROP_ZOOM
CAP_PROP_FOCUS Python: cv2.CAP_PROP_FOCUS
CAP_PROP_GUID Python: cv2.CAP_PROP_GUID
CAP_PROP_ISO_SPEED Python: cv2.CAP_PROP_ISO_SPEED
CAP_PROP_BACKLIGHT Python: cv2.CAP_PROP_BACKLIGHT
CAP_PROP_PAN Python: cv2.CAP_PROP_PAN
CAP_PROP_TILT Python: cv2.CAP_PROP_TILT
CAP_PROP_ROLL Python: cv2.CAP_PROP_ROLL
CAP_PROP_IRIS Python: cv2.CAP_PROP_IRIS
CAP_PROP_SETTINGS Python: cv2.CAP_PROP_SETTINGS Pop up video/camera filter dialog (note: only supported by DSHOW backend currently. The property value is ignored)
CAP_PROP_BUFFERSIZE Python: cv2.CAP_PROP_BUFFERSIZE
CAP_PROP_AUTOFOCUS Python: cv2.CAP_PROP_AUTOFOCUS
CAP_PROP_SAR_NUM Python: cv2.CAP_PROP_SAR_NUM Sample aspect ratio: num/den (num)
CAP_PROP_SAR_DEN Python: cv2.CAP_PROP_SAR_DEN Sample aspect ratio: num/den (den)
CAP_PROP_BACKEND Python: cv2.CAP_PROP_BACKEND Current backend (enum VideoCaptureAPIs). Read-only property.
CAP_PROP_CHANNEL Python: cv2.CAP_PROP_CHANNEL Video input or Channel Number (only for those cameras that support)
CAP_PROP_AUTO_WB Python: cv2.CAP_PROP_AUTO_WB enable/ disable auto white-balance
CAP_PROP_WB_TEMPERATURE Python: cv2.CAP_PROP_WB_TEMPERATURE white-balance color temperature
CAP_PROP_CODEC_PIXEL_FORMAT Python: cv2.CAP_PROP_CODEC_PIXEL_FORMAT (read-only) codec’s pixel format. 4-character code - seeVideoWriter::fourcc . Subset of AV_PIX_FMT_* or -1 if unknown
CAP_PROP_BITRATE Python: cv2.CAP_PROP_BITRATE (read-only) Video bitrate in kbits/s
CAP_PROP_ORIENTATION_META Python: cv2.CAP_PROP_ORIENTATION_META (read-only) Frame rotation defined by stream meta (applicable for FFmpeg back-end only)
CAP_PROP_ORIENTATION_AUTO Python: cv2.CAP_PROP_ORIENTATION_AUTO if true - rotates output frames of CvCapture considering video file’s metadata (applicable for FFmpeg back-end only) (https://github.com/opencv/opencv/issues/15499)
CAP_PROP_HW_ACCELERATION Python: cv2.CAP_PROP_HW_ACCELERATION (open-only ) Hardware acceleration type (see VideoAccelerationType). Setting supported only via params parameter in cv::VideoCapture constructor / .open() method. Default value is backend-specific.
CAP_PROP_HW_DEVICE Python: cv2.CAP_PROP_HW_DEVICE (open-only ) Hardware device index (select GPU if multiple available). Device enumeration is acceleration type specific.
CAP_PROP_HW_ACCELERATION_USE_OPENCL Python: cv2.CAP_PROP_HW_ACCELERATION_USE_OPENCL (open-only ) If non-zero, create new OpenCL context and bind it to current thread. The OpenCL context created with Video Acceleration context attached it (if not attached yet) for optimized GPU data copy between HW accelerated decoder and cv::UMat.
CAP_PROP_OPEN_TIMEOUT_MSEC Python: cv2.CAP_PROP_OPEN_TIMEOUT_MSEC (open-only ) timeout in milliseconds for opening a video capture (applicable for FFmpeg back-end only)
CAP_PROP_READ_TIMEOUT_MSEC Python: cv2.CAP_PROP_READ_TIMEOUT_MSEC (open-only ) timeout in milliseconds for reading from a video capture (applicable for FFmpeg back-end only)
CAP_PROP_STREAM_OPEN_TIME_USEC Python: cv2.CAP_PROP_STREAM_OPEN_TIME_USEC
CAP_PROP_VIDEO_TOTAL_CHANNELS Python: cv2.CAP_PROP_VIDEO_TOTAL_CHANNELS (read-only) Number of video channels
CAP_PROP_VIDEO_STREAM Python: cv2.CAP_PROP_VIDEO_STREAM (open-only ) Specify video stream, 0-based index. Use -1 to disable video stream from file or IP cameras. Default value is 0.
CAP_PROP_AUDIO_STREAM Python: cv2.CAP_PROP_AUDIO_STREAM (open-only ) Specify stream in multi-language media files, -1 - disable audio processing or microphone. Default value is -1.
CAP_PROP_AUDIO_POS Python: cv2.CAP_PROP_AUDIO_POS (read-only) Audio position is measured in samples. Accurate audio sample timestamp of previous grabbed fragment. See CAP_PROP_AUDIO_SAMPLES_PER_SECOND and CAP_PROP_AUDIO_SHIFT_NSEC.
CAP_PROP_AUDIO_SHIFT_NSEC Python: cv2.CAP_PROP_AUDIO_SHIFT_NSEC (read only) Contains the time difference between the start of the audio stream and the video stream in nanoseconds. Positive value means that audio is started after the first video frame. Negative value means that audio is started before the first video frame.
CAP_PROP_AUDIO_DATA_DEPTH Python: cv2.CAP_PROP_AUDIO_DATA_DEPTH (open, read) Alternative definition to bits-per-sample, but with clear handling of 32F / 32S
CAP_PROP_AUDIO_SAMPLES_PER_SECOND Python: cv2.CAP_PROP_AUDIO_SAMPLES_PER_SECOND (open, read) determined from file/codec input. If not specified, then selected audio sample rate is 44100
CAP_PROP_AUDIO_BASE_INDEX Python: cv2.CAP_PROP_AUDIO_BASE_INDEX (read-only) Index of the first audio channel for .retrieve() calls. That audio channel number continues enumeration after video channels.
CAP_PROP_AUDIO_TOTAL_CHANNELS Python: cv2.CAP_PROP_AUDIO_TOTAL_CHANNELS (read-only) Number of audio channels in the selected audio stream (mono, stereo, etc)
CAP_PROP_AUDIO_TOTAL_STREAMS Python: cv2.CAP_PROP_AUDIO_TOTAL_STREAMS (read-only) Number of audio streams.
CAP_PROP_AUDIO_SYNCHRONIZE Python: cv2.CAP_PROP_AUDIO_SYNCHRONIZE (open, read) Enables audio synchronization.
CAP_PROP_LRF_HAS_KEY_FRAME Python: cv2.CAP_PROP_LRF_HAS_KEY_FRAME FFmpeg back-end only - Indicates whether the Last Raw Frame (LRF), output fromVideoCapture::read() when VideoCapture is initialized with VideoCapture::open(CAP_FFMPEG, {CAP_PROP_FORMAT, -1}) or VideoCapture::set(CAP_PROP_FORMAT,-1) is called before the first call to VideoCapture::read(), contains encoded data for a key frame.
CAP_PROP_CODEC_EXTRADATA_INDEX Python: cv2.CAP_PROP_CODEC_EXTRADATA_INDEX Positive index indicates that returning extra data is supported by the video back end. This can be retrieved as cap.retrieve(data,<returned index>). E.g. When reading from a h264 encoded RTSP stream, the FFmpeg backend could return the SPS and/or PPS if available (if sent in reply to a DESCRIBE request), from calls to cap.retrieve(data, <returned index>).

VideoWriter

视频保存的属性 描述
VIDEOWRITER_PROP_QUALITY Python: cv2.VIDEOWRITER_PROP_QUALITY Current quality (0…100%) of the encoded videostream. Can be adjusted dynamically in some codecs.
VIDEOWRITER_PROP_FRAMEBYTES Python: cv2.VIDEOWRITER_PROP_FRAMEBYTES (Read-only): Size of just encoded video frame. Note that the encoding order may be different from representation order.
VIDEOWRITER_PROP_NSTRIPES Python: cv2.VIDEOWRITER_PROP_NSTRIPES Number of stripes for parallel encoding. -1 for auto detection.
VIDEOWRITER_PROP_IS_COLOR Python: cv2.VIDEOWRITER_PROP_IS_COLOR If it is not zero, the encoder will expect and encode color frames, otherwise it will work with grayscale frames.
VIDEOWRITER_PROP_DEPTH Python: cv2.VIDEOWRITER_PROP_DEPTH Defaults to CV_8U.
VIDEOWRITER_PROP_HW_ACCELERATION Python: cv2.VIDEOWRITER_PROP_HW_ACCELERATION (open-only ) Hardware acceleration type (see VideoAccelerationType). Setting supported only via params parameter in VideoWriter constructor / .open() method. Default value is backend-specific.
VIDEOWRITER_PROP_HW_DEVICE Python: cv2.VIDEOWRITER_PROP_HW_DEVICE (open-only ) Hardware device index (select GPU if multiple available). Device enumeration is acceleration type specific.
VIDEOWRITER_PROP_HW_ACCELERATION_USE_OPENCL Python: cv2.VIDEOWRITER_PROP_HW_ACCELERATION_USE_OPENCL (open-only ) If non-zero, create new OpenCL context and bind it to current thread. The OpenCL context created with Video Acceleration context attached it (if not attached yet) for optimized GPU data copy between cv::UMat and HW accelerated encoder.

扩展信息

其他信息请参考 OpenCV 官网教程

有些后端是系统库,有些是OpenCV自带的,也有的是外部的。

运行时选择后端API

OpenCV 会自动选择第一个可用的 API(apiPreference=cv::CAP_ANY) 也可以选择API,如

//declare a capture object
cv::VideoCapture cap(filename, cv::CAP_MSMF);//or specify the apiPreference with open
cap.open(filename, cv::CAP_MSMF);

使能后端API

  1. 打开对应的 CMake选项, e.g. -DWITH_GSTREAMER=ON
  2. 重新编译 OpenCV

第三方驱动和相机

大部分的工业场景下,有很多厂商有自己的 API接口,并没有集成到 OpenCV里,我们有一个折中的方案是将他们的数据放到内存中,整理成 MAT格式,然后用 OpenCV读取和使用。

FFmpeg

OpenCV 可以使用 FFmpeg 库进行录制和转换音视频。如果需要运行时使用 FFmpeg, 那么发布的时候要一起发布 FFmpeg 库。

【参考】

  1. https://docs.opencv.org/4.5.5/d8/dfe/classcv_1_1VideoCapture.html#a4576e03f447abfdbd602c0809824ec03
  2. https://docs.opencv.org/4.5.5/d0/da7/videoio_overview.html

【OpenCV-Python】教程:1-2 视频读取显示保存相关推荐

  1. OpenCV Python教程(3)(4)(5): 直方图的计算与显示 形态学处理 初级滤波内

    OpenCV Python教程(3.直方图的计算与显示) 本篇文章介绍如何用OpenCV Python来计算直方图,并简略介绍用NumPy和Matplotlib计算和绘制直方图 直方图的背景知识.用途 ...

  2. opencv python 从摄像头获取视频、帧率、分辨率等属性设置和使用

    opencv python 从摄像头获取视频.帧率.分辨率等属性设置和使用 文章目录: 1,为了获取视频,你应该创建一个 VideoCapture 对象.他的参数可以是设备的索引号,或者是一个视频文件 ...

  3. OpenCV Python教程(2、图像元素的访问、通道分离与合并)

    OpenCV Python教程之图像元素的访问.通道分离与合并 转载请详细注明原作者及出处,谢谢! 访问像素 像素的访问和访问numpy中ndarray的方法完全一样,灰度图为: [python] v ...

  4. opencv-python教程学习系列2-读取/显示/保存图像

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的读取.显示以及保存,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: ...

  5. python打开文件夹中的tiff_浅谈python下tiff图像的读取和保存方法

    对比测试 scipy.misc和 PIL.Image和 libtiff.TIFF三个库 输入: 1. (读取矩阵) 读入uint8.uint16.float32的lena.tif 2. (生成矩阵) ...

  6. OpenCV Python教程(1、图像的载入、显示和保存)

    本文是OpenCV  2 Computer Vision Application Programming Cookbook读书笔记的第一篇.在笔记中将以Python语言改写每章的代码. PythonO ...

  7. opencv python教程简书_Python-OpenCV —— 基本操作一网打尽

    OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.MacOS操作系统上.它轻量级而且高效--由一系列 C 函数和少量C++类构成,同时提供了Pyt ...

  8. C++和Python,JSON文件的读取和保存

    1. Python python很简单,因为python自带json包,所以只要import就可以,具体使用如下. import json#保存json文件 root = {'Exp':[], 'Ex ...

  9. opencv c++版本图片及视频打开与保存

    图片及视频打开与保存: #include "opencv2/opencv.hpp" #include <iostream>using namespace std; us ...

最新文章

  1. 使用Java监控工具出现 Can't attach to the process
  2. 谁来养活中国人?他,用小麦增产千亿斤让中国成为粮食大国
  3. 94授权登录steam怎么用_Steam手机令牌如何绑定,绑定后好处多多
  4. java contains_Java基础教程|生成不重复随机数 java
  5. 5 判断数据是否存在_Trie树实现:100亿URL中判断某个URL是否存在
  6. 学习笔记(Spring事务管理)
  7. 加装的硬盘进入后点不了文件夹_Mac OS Catalina 挂载NTFS硬盘的问题 (无需第三方软件,几行代码即可)...
  8. HDU1524(博弈--有向无环图SG函数)
  9. 机器人蛮王_盖伦:吊打我老婆,蛮王:我也是,他:被老婆打的不敢出塔
  10. are exo exo是什么歌 we_从演出酬劳只有一袋米到万人追捧!EXO在七年中究竟经历了什么?...
  11. java反射接口_Java反射详解
  12. OpenCV图像处理基础操作(3)
  13. RapidXML的读写
  14. 海量Oracle学习视频分享
  15. 关于define与defined的区别
  16. Free Download Manager
  17. 计算机图形学实验报告几何变换,计算机图形学实验报告几何变换.doc
  18. w ndows10启动黑屏,win10开机一直黑屏的解决方法
  19. 教你正确修改handsome博客模板页面宽度
  20. 【云原生】SpringCloud系列之服务调用OpenFeign(基本概念和使用步骤)

热门文章

  1. 电网电压采样方案之一变流并联负反馈,电流反馈
  2. 女主是计算机系的师生文,十一本经典师生文:绝对有一本是你没看过的,强推《至此终年》...
  3. 思维导图MindManager的文件格式与例图
  4. Lenovo ThinkPad window10 系统 显示屏检测不出来问题
  5. 玉伯直播推荐的 3 本书、聊到的一些内容
  6. 听完玉伯的直播,我学到了这些。
  7. 数据预处理,PCA主成分分析
  8. 外商投资产业指导目录(2007年修订)
  9. Javier Paniza: Java开发效率也可以比RoR高
  10. 阿尔茨海默病中的人类连接组及它与生物标记物和遗传学的关系