python opencv gpu加速_详解python中GPU版本的opencv常用方法介绍

2023-11-01

引言

本篇是以python的视角介绍相关的函数还有自我使用中的一些问题,本想在这篇之前总结一下opencv编译的全过程,但遇到了太多坑,暂时不太想回看做过的笔记,所以这里主要总结python下GPU版本的opencv。

主要函数说明

threshold():二值化,但要指定设定阈值

blendLinear():两幅图片的线形混合

calcHist()

createBoxFilter ():创建一个规范化的2D框过滤器

canny边缘检测

createGaussianFilter():创建一个Gaussian过滤器

createLaplacianFilter():创建一个Laplacian过滤器

createLinearFilter():创建一个线形过滤器

createMorphologyFilter():形态学运算滤波器;腐蚀、开、关等操作

createSolbelFilter():创建一个solbel过滤器

createHougnCirclesDetector():创建一个霍夫原检测器

createMedianFilter():创建一个中值滤波过滤器

createTemplateMatching():模板匹配

cvtColor():颜色空间转换

dft():执行浮点矩阵的正向或逆离散傅里叶变换

drawColorDisp():颜色差异图像

equalizeHist():将灰度图像的直方图均衡化

findMinMax()

findMinMaxLoc()

flip():翻转二维矩阵

merge():用几个单通道矩阵构成一个多通道矩阵

split():将多通道矩阵分离成多个单通道矩阵

getCudaEnabledDeviceCount():获取可用的gpu数目

getDevice():返回由cuda::setDevice或默认初始化的当前设备索引

printCudaDeviceInfo()

resetDevice():显示地销毁和清理与当前进程中当前设备相关的所有资源

setDevice():设置一个device并为当前线程初始化它;如果省略次函数的调用,则在第一次CUDA使用时初始化默认设备

remap():对图像应用一般的几个变换

resize():调整一个图像大小

rotate():在原点(0,0)周围旋转一个图像,然后移动它

sum():返回矩阵元素的和

上述是在cv2.cuda下总结出来的一些可以使用的方法,因为底层是C++,并且python主要调用的是cv2.so文件,如果我们想要看到一个对象到底有什么样的作用还有一系列的使用方式,我们可以利用python的魔法方法__dir__ 与help查看:

$ dir(cv2.cuda)

"""

['ALPHA_ATOP', 'ALPHA_ATOP_PREMUL', 'ALPHA_IN', 'ALPHA_IN_PREMUL', 'ALPHA_OUT', 'ALPHA_OUT_PREMUL', 'ALPHA_OVER', 'ALPHA_OVER_PREMUL', 'ALPHA_PLUS', 'ALPHA_PLUS_PREMUL', 'ALPHA_PREMUL', 'ALPHA_XOR', 'ALPHA_XOR_PREMUL', 'BroxOpticalFlow_create', 'COLOR_BAYER_BG2BGR_MHT', 'COLOR_BAYER_BG2GRAY_MHT', 'COLOR_BAYER_BG2RGB_MHT', 'COLOR_BAYER_GB2BGR_MHT', 'COLOR_BAYER_GB2GRAY_MHT', 'COLOR_BAYER_GB2RGB_MHT', 'COLOR_BAYER_GR2BGR_MHT', 'COLOR_BAYER_GR2GRAY_MHT', 'COLOR_BAYER_GR2RGB_MHT', 'COLOR_BAYER_RG2BGR_MHT', 'COLOR_BAYER_RG2GRAY_MHT', 'COLOR_BAYER_RG2RGB_MHT', 'COLOR_BayerBG2BGR_MHT', 'COLOR_BayerBG2GRAY_MHT', 'COLOR_BayerBG2RGB_MHT', 'COLOR_BayerGB2BGR_MHT', 'COLOR_BayerGB2GRAY_MHT', 'COLOR_BayerGB2RGB_MHT', 'COLOR_BayerGR2BGR_MHT', 'COLOR_BayerGR2GRAY_MHT', 'COLOR_BayerGR2RGB_MHT', 'COLOR_BayerRG2BGR_MHT', 'COLOR_BayerRG2GRAY_MHT', 'COLOR_BayerRG2RGB_MHT', 'CascadeClassifier_create', 'DEVICE_INFO_COMPUTE_MODE_DEFAULT', 'DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE', 'DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE_PROCESS', 'DEVICE_INFO_COMPUTE_MODE_PROHIBITED', 'DYNAMIC_PARALLELISM', 'DensePyrLKOpticalFlow_create', 'DescriptorMatcher_createBFMatcher', 'DeviceInfo_ComputeModeDefault', 'DeviceInfo_ComputeModeExclusive', 'DeviceInfo_ComputeModeExclusiveProcess', 'DeviceInfo_ComputeModeProhibited', 'EVENT_BLOCKING_SYNC', 'EVENT_DEFAULT', 'EVENT_DISABLE_TIMING', 'EVENT_INTERPROCESS', 'Event_BLOCKING_SYNC', 'Event_DEFAULT', 'Event_DISABLE_TIMING', 'Event_INTERPROCESS', 'Event_elapsedTime', 'FEATURE_SET_COMPUTE_10', 'FEATURE_SET_COMPUTE_11', 'FEATURE_SET_COMPUTE_12', 'FEATURE_SET_COMPUTE_13', 'FEATURE_SET_COMPUTE_20', 'FEATURE_SET_COMPUTE_21', 'FEATURE_SET_COMPUTE_30', 'FEATURE_SET_COMPUTE_32', 'FEATURE_SET_COMPUTE_35', 'FEATURE_SET_COMPUTE_50', 'FarnebackOpticalFlow_create', 'FastFeatureDetector_create', 'GLOBAL_ATOMICS', 'GpuMat_defaultAllocator', 'GpuMat_setDefaultAllocator', 'HOG_create', 'HOST_MEM_PAGE_LOCKED', 'HOST_MEM_SHARED', 'HOST_MEM_WRITE_COMBINED', 'HostMem_PAGE_LOCKED', 'HostMem_SHARED', 'HostMem_WRITE_COMBINED', 'NATIVE_DOUBLE', 'NVIDIA_OPTICAL_FLOW_1_0_NV_OF_PERF_LEVEL_FAST', 'NVIDIA_OPTICAL_FLOW_1_0_NV_OF_PERF_LEVEL_MAX', 'NVIDIA_OPTICAL_FLOW_1_0_NV_OF_PERF_LEVEL_MEDIUM', 'NVIDIA_OPTICAL_FLOW_1_0_NV_OF_PERF_LEVEL_SLOW', 'NVIDIA_OPTICAL_FLOW_1_0_NV_OF_PERF_LEVEL_UNDEFINED', 'NvidiaOpticalFlow_1_0_NV_OF_PERF_LEVEL_FAST', 'NvidiaOpticalFlow_1_0_NV_OF_PERF_LEVEL_MAX', 'NvidiaOpticalFlow_1_0_NV_OF_PERF_LEVEL_MEDIUM', 'NvidiaOpticalFlow_1_0_NV_OF_PERF_LEVEL_SLOW', 'NvidiaOpticalFlow_1_0_NV_OF_PERF_LEVEL_UNDEFINED', 'NvidiaOpticalFlow_1_0_create', 'ORB_create', 'OpticalFlowDual_TVL1_create', 'SHARED_ATOMICS', 'SURF_CUDA_ANGLE_ROW', 'SURF_CUDA_HESSIAN_ROW', 'SURF_CUDA_LAPLACIAN_ROW', 'SURF_CUDA_OCTAVE_ROW', 'SURF_CUDA_ROWS_COUNT', 'SURF_CUDA_SIZE_ROW', 'SURF_CUDA_X_ROW', 'SURF_CUDA_Y_ROW', 'SparsePyrLKOpticalFlow_create', 'StereoBeliefPropagation_estimateRecommendedParams', 'StereoConstantSpaceBP_estimateRecommendedParams', 'Stream_Null', 'TargetArchs_has', 'TargetArchs_hasBin', 'TargetArchs_hasEqualOrGreater', 'TargetArchs_hasEqualOrGreaterBin', 'TargetArchs_hasEqualOrGreaterPtx', 'TargetArchs_hasEqualOrLessPtx', 'TargetArchs_hasPtx', 'WARP_SHUFFLE_FUNCTIONS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'absSum', 'absdiff', 'add', 'addWeighted', 'alphaComp', 'bilateralFilter', 'bitwise_and', 'bitwise_not', 'bitwise_or', 'bitwise_xor', 'blendLinear', 'buildWarpAffineMaps', 'buildWarpPerspectiveMaps', 'calcAbsSum', 'calcHist', 'calcNorm', 'calcNormDiff', 'calcSqrSum', 'calcSum', 'cartToPolar', 'compare', 'copyMakeBorder', 'countNonZero', 'createBackgroundSubtractorMOG', 'createBackgroundSubtractorMOG2', 'createBoxFilter', 'createBoxMaxFilter', 'createBoxMinFilter', 'createCLAHE', 'createCannyEdgeDetector', 'createColumnSumFilter', 'createContinuous', 'createConvolution', 'createDFT', 'createDerivFilter', 'createDisparityBilateralFilter', 'createGaussianFilter', 'createGeneralizedHoughBallard', 'createGeneralizedHoughGuil', 'createGoodFeaturesToTrackDetector', 'createHarrisCorner', 'createHoughCirclesDetector', 'createHoughLinesDetector', 'createHoughSegmentDetector', 'createLaplacianFilter', 'createLinearFilter', 'createLookUpTable', 'createMedianFilter', 'createMinEigenValCorner', 'createMorphologyFilter', 'createRowSumFilter', 'createScharrFilter', 'createSeparableLinearFilter', 'createSobelFilter', 'createStereoBM', 'createStereoBeliefPropagation', 'createStereoConstantSpaceBP', 'createTemplateMatching', 'cvtColor', 'demosaicing', 'dft', 'divide', 'drawColorDisp', 'ensureSizeIsEnough', 'equalizeHist', 'evenLevels', 'exp', 'findMinMax', 'findMinMaxLoc', 'flip', 'gammaCorrection', 'gemm', 'getCudaEnabledDeviceCount', 'getDevice', 'histEven', 'histRange', 'integral', 'log', 'magnitude', 'magnitudeSqr', 'max', 'meanShiftFiltering', 'meanShiftProc', 'meanShiftSegmentation', 'meanStdDev', 'merge', 'min', 'minMax', 'minMaxLoc', 'mulAndScaleSpectrums', 'mulSpectrums', 'multiply', 'norm', 'normalize', 'phase', 'polarToCart', 'pow', 'printCudaDeviceInfo', 'printShortCudaDeviceInfo', 'pyrDown', 'pyrUp', 'rectStdDev', 'reduce', 'registerPageLocked', 'remap', 'reprojectImageTo3D', 'resetDevice', 'resize', 'rotate', 'setBufferPoolConfig', 'setBufferPoolUsage', 'setDevice', 'split', 'sqr', 'sqrIntegral', 'sqrSum', 'sqrt', 'subtract', 'sum', 'threshold', 'transpose', 'unregisterPageLocked', 'warpAffine', 'warpPerspective']

"""

$ GPU_mat = cv2.cuda_GpuMat()

$ dir(GPU_mat)

"""

['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'adjustROI', 'assignTo', 'channels', 'clone', 'col', 'colRange', 'convertTo', 'copyTo', 'create', 'defaultAllocator', 'depth', 'download', 'elemSize', 'elemSize1', 'empty', 'isContinuous', 'locateROI', 'reshape', 'row', 'rowRange', 'setDefaultAllocator', 'setTo', 'size', 'step', 'step1', 'swap', 'type', 'updateContinuityFlag', 'upload']

"""

$ dir(cv2)

"""

['', 'ACCESS_FAST', 'ACCESS_MASK', 'ACCESS_READ', 'ACCESS_RW', 'ACCESS_WRITE', 'ADAPTIVE_THRESH_GAUSSIAN_C', 'ADAPTIVE_THRESH_MEAN_C', 'AGAST_FEATURE_DETECTOR_AGAST_5_8', 'AGAST_FEATURE_DETECTOR_AGAST_7_12D', 'AGAST_FEATURE_DETECTOR_AGAST_7_12S', 'AGAST_FEATURE_DETECTOR_NONMAX_SUPPRESSION', 'AGAST_FEATURE_DETECTOR_OAST_9_16', 'AGAST_FEATURE_DETECTOR_THRESHOLD', 'AKAZE', 'AKAZE_DESCRIPTOR_KAZE', 'AKAZE_DESCRIPTOR_KAZE_UPRIGHT', 'AKAZE_DESCRIPTOR_MLDB', 'AKAZE_DESCRIPTOR_MLDB_UPRIGHT', 'AKAZE_create', 'AffineTransformer', 'AgastFeatureDetector', 'AgastFeatureDetector_AGAST_5_8', 'AgastFeatureDetector_AGAST_7_12d', 'AgastFeatureDetector_AGAST_7_12s', 'AgastFeatureDetector_NONMAX_SUPPRESSION', 'AgastFeatureDetector_OAST_9_16', 'AgastFeatureDetector_THRESHOLD', 'AgastFeatureDetector_create', 'Algorithm', 'AlignExposures', 'AlignMTB', 'AsyncArray', 'BFMatcher', 'BFMatcher_create', 'BORDER_CONSTANT', 'BORDER_DEFAULT', 'BORDER_ISOLATED', 'BORDER_REFLECT', 'BORDER_REFLECT101', 'BORDER_REFLECT_101', 'BORDER_REPLICATE', 'BORDER_TRANSPARENT', 'BORDER_WRAP', 'BOWImgDescriptorExtractor', 'BOWKMeansTrainer', 'BOWTrainer', 'BRISK', 'BRISK_create', 'BackgroundSubtractor', 'BackgroundSubtractorKNN', 'BackgroundSubtractorMOG2', 'BaseCascadeClassifier', 'CALIB_CB_ACCURACY', 'CALIB_CB_ADAPTIVE_THRESH', 'CALIB_CB_ASYMMETRIC_GRID', 'CALIB_CB_CLUSTERING', 'CALIB_CB_EXHAUSTIVE', 'CALIB_CB_FAST_CHECK', 'CALIB_CB_FILTER_QUADS', 'CALIB_CB_NORMALIZE_IMAGE', 'CALIB_CB_SYMMETRIC_GRID', 'CALIB_FIX_ASPECT_RATIO', 'CALIB_FIX_FOCAL_LENGTH', 'CALIB_FIX_INTRINSIC', 'CALIB_FIX_K1', 'CALIB_FIX_K2', 'CALIB_FIX_K3', 'CALIB_FIX_K4', 'CALIB_FIX_K5', 'CALIB_FIX_K6', 'CALIB_FIX_PRINCIPAL_POINT', 'CALIB_FIX_S1_S2_S3_S4', 'CALIB_FIX_TANGENT_DIST', 'CALIB_FIX_TAUX_TAUY', 'CALIB_HAND_EYE_ANDREFF', 'CALIB_HAND_EYE_DANIILIDIS', 'CALIB_HAND_EYE_HORAUD', 'CALIB_HAND_EYE_PARK', 'CALIB_HAND_EYE_TSAI', 'CALIB_NINTRINSIC', 'CALIB_RATIONAL_MODEL', 'CALIB_SAME_FOCAL_LENGTH', 'CALIB_THIN_PRISM_MODEL', 'CALIB_TILTED_MODEL', 'CALIB_USE_EXTRINSIC_GUESS', 'CALIB_USE_INTRINSIC_GUESS', 'CALIB_USE_LU', 'CALIB_USE_QR', 'CALIB_ZERO_DISPARITY', 'CALIB_ZERO_TANGENT_DIST', 'CAP_ANDROID', 'CAP_ANY', 'CAP_ARAVIS', 'CAP_AVFOUNDATION', 'CAP_CMU1394', 'CAP_DC1394', 'CAP_DSHOW', 'CAP_FFMPEG', 'CAP_FIREWARE', 'CAP_FIREWIRE', 'CAP_GIGANETIX', 'CAP_GPHOTO2', 'CAP_GSTREAMER', 'CAP_IEEE1394', 'CAP_IMAGES', 'CAP_INTELPERC', 'CAP_INTELPERC_DEPTH_GENERATOR', 'CAP_INTELPERC_DEPTH_MAP', 'CAP_INTELPERC_GENERATORS_MASK', 'CAP_INTELPERC_IMAGE', 'CAP_INTELPERC_IMAGE_GENERATOR', 'CAP_INTELPERC_IR_GENERATOR', 'CAP_INTELPERC_IR_MAP', 'CAP_INTELPERC_UVDEPTH_MAP', 'CAP_INTEL_MFX', 'CAP_MSMF', 'CAP_OPENCV_MJPEG', 'CAP_OPENNI', 'CAP_OPENNI2', 'CAP_OPENNI2_ASUS', 'CAP_OPENNI_ASUS', 'CAP_OPENNI_BGR_IMAGE', 'CAP_OPENNI_DEPTH_GENERATOR', 'CAP_OPENNI_DEPTH_GENERATOR_BASELINE', 'CAP_OPENNI_DEPTH_GENERATOR_FOCAL_LENGTH', 'CAP_OPENNI_DEPTH_GENERATOR_PRESENT', 'CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION', 'CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION_ON', 'CAP_OPENNI_DEPTH_MAP', 'CAP_OPENNI_DISPARITY_MAP', 'CAP_OPENNI_DISPARITY_MAP_32F', 'CAP_OPENNI_GENERATORS_MASK', 'CAP_OPENNI_GRAY_IMAGE', 'CAP_OPENNI_IMAGE_GENERATOR', 'CAP_OPENNI_IMAGE_GENERATOR_OUTPUT_MODE', 'CAP_OPENNI_IMAGE_GENERATOR_PRESENT', 'CAP_OPENNI_IR_GENERATOR', 'CAP_OPENNI_IR_GENERATOR_PRESENT', 'CAP_OPENNI_IR_IMAGE', 'CAP_OPENNI_POINT_CLOUD_MAP', 'CAP_OPENNI_QVGA_30HZ', 'CAP_OPENNI_QVGA_60HZ', 'CAP_OPENNI_SXGA_15HZ', 'CAP_OPENNI_SXGA_30HZ', 'CAP_OPENNI_VALID_DEPTH_MASK', 'CAP_OPENNI_VGA_30HZ', 'CAP_PROP_APERTURE', 'CAP_PROP_AUTOFOCUS', 'CAP_PROP_AUTO_EXPOSURE', 'CAP_PROP_AUTO_WB', 'CAP_PROP_BACKEND', 'CAP_PROP_BACKLIGHT', 'CAP_PROP_BRIGHTNESS', 'CAP_PROP_BUFFERSIZE', 'CAP_PROP_CHANNEL', 'CAP_PROP_CONTRAST', 'CAP_PROP_CONVERT_RGB', 'CAP_PROP_DC1394_MAX', 'CAP_PROP_DC1394_MODE_AUTO', 'CAP_PROP_DC1394_MODE_MANUAL', 'CAP_PROP_DC1394_MODE_ONE_PUSH_AUTO', 'CAP_PROP_DC1394_OFF', 'CAP_PROP_EXPOSURE', 'CAP_PROP_EXPOSUREPROGRAM', 'CAP_PROP_FOCUS', 'CAP_PROP_FORMAT', 'CAP_PROP_FOURCC', 'CAP_PROP_FPS', 'CAP_PROP_FRAME_COUNT', 'CAP_PROP_FRAME_HEIGHT', 'CAP_PROP_FRAME_WIDTH', 'CAP_PROP_GAIN', 'CAP_PROP_GAMMA', 'CAP_PROP_GIGA_FRAME_HEIGH_MAX', 'CAP_PROP_GIGA_FRAME_OFFSET_X', 'CAP_PROP_GIGA_FRAME_OFFSET_Y', 'CAP_PROP_GIGA_FRAME_SENS_HEIGH', 'CAP_PROP_GIGA_FRAME_SENS_WIDTH', 'CAP_PROP_GIGA_FRAME_WIDTH_MAX', 'CAP_PROP_GPHOTO2_COLLECT_MSGS', 'CAP_PROP_GPHOTO2_FLUSH_MSGS', 'CAP_PROP_GPHOTO2_PREVIEW', 'CAP_PROP_GPHOTO2_RELOAD_CONFIG', 'CAP_PROP_GPHOTO2_RELOAD_ON_CHANGE', 'CAP_PROP_GPHOTO2_WIDGET_ENUMERATE', 'CAP_PROP_GSTREAMER_QUEUE_LENGTH', 'CAP_PROP_GUID', 'CAP_PROP_HUE', 'CAP_PROP_IMAGES_BASE', 'CAP_PROP_IMAGES_LAST', 'CAP_PROP_INTELPERC_DEPTH_CONFIDENCE_THRESHOLD', 'CAP_PROP_INTELPERC_DEPTH_FOCAL_LENGTH_HORZ', 'CAP_PROP_INTELPERC_DEPTH_FOCAL_LENGTH_VERT', 'CAP_PROP_INTELPERC_DEPTH_LOW_CONFIDENCE_VALUE', 'CAP_PROP_INTELPERC_DEPTH_SATURATION_VALUE', 'CAP_PROP_INTELPERC_PROFILE_COUNT', 'CAP_PROP_INTELPERC_PROFILE_IDX', 'CAP_PROP_IOS_DEVICE_EXPOSURE', 'CAP_PROP_IOS_DEVICE_FLASH', 'CAP_PROP_IOS_DEVICE_FOCUS', 'CAP_PROP_IOS_DEVICE_TORCH', 'CAP_PROP_IOS_DEVICE_WHITEBALANCE', '

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python opencv gpu加速_详解python中GPU版本的opencv常用方法介绍 的相关文章

  • ajax的responseText是什么东西

    你向ajax后台的程序发送xmlhttp请求的时候 后台程序接到请求会进行处理 处理结束后 可以返回一串数据给前台 这个就是responseText 一般在后台程序C 中是Response Write 字符串 php中使用的是echo 就是
  • JVM系列之类加载

    前言 虚拟机把描述类的数据从Class文件加载到内存 并对数据进行校验 转换解析和初始化 最终形成可以被虚拟机直接使用的Java类型 这个过程就称为JVM的类加载机制 今天我们主要从下面两个方面说下类加载 类加载时机和类加载过程 类加载时机
  • 单元测试打桩,通俗易懂解释。

    在软件开发中的单元测试过程中 单元测试打桩通常是一种模拟或替代正在被测试的组件或系统的策略 在单元测试打桩过程中 测试代码使用一个 虚拟 实现来替代掉实际组件或系统的某些部分 从而可以进行封闭式的测试 简单来说 单元测试打桩是一种 模拟卡
  • esp8266&点灯科技&arduino

    ESP8266 点灯科技 arduino esp8266实现温度传感器 利用超声波传感器测距与舵机控制 ESP8266驱动DS18B20 ESP8266与DS18B20的硬件连接 DS18B20引脚排列 3 读取一次DS18B20温度数据
  • 记录-跨域的形成和跨域方法

    1 什么是跨域 根据浏览器的同源策略 凡是发送请求Url的协议 域名 端口三者之间任意一与当前页面地址不同即为跨域 同源策略 同域名 domain或IP 同端口 同协议视为同一个域 一个域内的脚本仅仅具有本域内 的权限 可以理解为本域脚本只
  • 【原创】深度学习第18弹:基于MobileNet的手势识别

    一 链接 原创 深度学习第18弹 基于MobileNet的手势识别 二 效果视频 基于神经网络MobileNet的手势识别 个人网站 https www deepvisionzero com 微信公众号 DeepVisionZero
  • 如何求数组中两个元素的最小距离(两种方法)

    给定一个数组 数组中含有重复的元素 给定两个数字num1 num2 求这两个数字在数组中出现的位置的最小距离 分析 对数组双重遍历 找出最小距离 但是这种方法效率比较低 由于在求距离时只关心num1 num2这两个数 因此只需要对数组进行一
  • 嵌入式开发——常见的存储器分类和特性介绍

    1 存储器的组成 存储器大体上由 存储颗粒 控制电路 组成 存储颗粒负责存储数据 控制电路负责管理存储颗粒和对外交换数据 如果从存储颗粒上进行分类 就是以是否掉电丢失 是否随机寻址 是可读还是可写 是否需要初始化等标准进行分类 如果从控制电
  • 32_STM32内部温度传感器实验

    目录 内部温度传感器简介 STM32ADC对应引脚 内部温度传感器使用注意使用事项 开启内部温度传感器步骤 实验源码 内部温度传感器简介 内部温度传感器框图 从图上可以看出温度传感器可通过TSVREFR控制位连接到ADC的固定通道16 温度
  • hive update和delete报错Attempt to do update or delete using transaction manager

    转载自 levy cui 默认在hive中没有默认开启支持单条插入 update 更新以及删除 delete 操作 需要自己配置 而在默认情况下 当用户如果使用update和delete操作时 会出现如下情况 hive gt update
  • 灰度重心法提取光条纹中心

    灰度重心法提取激光光条纹中心其实是将光条纹截面的灰度值分布中的质心记作为光条纹的中心 在一列线激光中先利用极值法求取光强最大的一点gmax 然后确定一个阀值 gmax g 取10 20 在阈值两边判断大于 的元素 求出其重心位置作为光条纹的
  • Open3D (C++) 计算距离最大的点

    目录 一 概述 二 代码实现 三 结果展示 一 概述 给定一个点 求距离该点最远的点 二 代码实现 include
  • 2018年数学建模国赛A题题目、解题思路、matlab代码(四)

    题目 消防和金属冶金等行业常常需要工作人员在高温环境中作业 高温作业专用服装可以较好地吸收部分热量 使得工作人员体表温度不至于过高从而避免灼伤 所以高温作业服必不可少 通常作业服由三层材料构成 记为 I II III 层 其中 I 层与外界
  • vue2自定义插件

    1 新建插件文件夹 plugin 新建文件 index js index vue index vue
  • 8款让你轻松写出优秀年中总结的神器!

    又到年中总结的时候了 不知道怎么写总结呢 今天就给大家推荐8款写作神器 第一款 ChatGPT ChatGPT是由OpenAI创建的基于人工智能自然语言处理技术的系统 旨在进行自然流畅的对话并提供连贯且相关的回复 ChatGPT使用了GPT
  • 夜深人静学32系列16——RTC实时时钟

    RTC时钟 RTC 什么是RTC RTC结构框图 CubeMX配置 RTC代码配置 实战 简易时钟 任务要求 代码实现 实验结果 补充 唤醒功能配置 代码如下 RTC 什么是RTC RTC Real Time Clock 实时时钟 RTC是
  • Jmeter性能测试(性能测试,Jmeter使用与结果分析)

    每天进步一点点 关注我哦 每天分享测试技术文章 前言 一 性能测试 1 什么是性能测试 2 性能测试的重要性 3 性能指标 QPS和TPS QPS TPS 二 压测工具Jmeter 1 什么是Jmeter 2 Jmeter主要元件 3 下载
  • Cloudflare Worker 部署纯静态网站

    安装 Wrangler CLI npm i cloudflare wrangler g 或者 cargo install wrangler 创建一个空白网站模板 wrangler generate proj site ref 文档 http
  • element-plus 按钮在一些浏览器中无法显示问题

    正常按钮样式 在360浏览器或者chrome 88以下版本浏览器中的按钮样式 分析 not 选择器的写法不兼容 not a b 这种伪类不支持 解决方案 postcss selector not 插件文档地址 postcss一个插件 用来将

随机推荐