该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。希望文章对您有所帮助,如果有不足之处,还请海涵~

前面一篇文章详细讲解了OpenCV快速实现人脸检测,涉及图像、视频、摄像头。这篇文章将介绍MoviePy视频编辑库,实现视频的自定义剪切和合并操作,基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转载请署名“CSDN+杨秀璋”及原地址出处,谢谢!!

该扩展包缺点:速度太慢,真的很慢,后面看看有没有更好的替代方法。

该系列在github所有源代码:

  • https://github.com/eastmountyxz/ImageProcessing-Python
  • https://github.com/eastmountyxz/CSDNBlog-ImageProcessing-Python

前文参考:
[Python图像处理] 一.图像处理基础知识及OpenCV入门函数
[Python图像处理] 二.OpenCV+Numpy库读取与修改像素
[Python图像处理] 三.获取图像属性、兴趣ROI区域及通道处理
[Python图像处理] 四.图像平滑之均值滤波、方框滤波、高斯滤波及中值滤波
[Python图像处理] 五.图像融合、加法运算及图像类型转换
[Python图像处理] 六.图像缩放、图像旋转、图像翻转与图像平移
[Python图像处理] 七.图像阈值化处理及算法对比
[Python图像处理] 八.图像腐蚀与图像膨胀
[Python图像处理] 九.形态学之图像开运算、闭运算、梯度运算
[Python图像处理] 十.形态学之图像顶帽运算和黑帽运算
[Python图像处理] 十一.灰度直方图概念及OpenCV绘制直方图
[Python图像处理] 十二.图像几何变换之图像仿射变换、图像透视变换和图像校正
[Python图像处理] 十三.基于灰度三维图的图像顶帽运算和黑帽运算
[Python图像处理] 十四.基于OpenCV和像素处理的图像灰度化处理
[Python图像处理] 十五.图像的灰度线性变换
[Python图像处理] 十六.图像的灰度非线性变换之对数变换、伽马变换
[Python图像处理] 十七.图像锐化与边缘检测之Roberts算子、Prewitt算子、Sobel算子和Laplacian算子
[Python图像处理] 十八.图像锐化与边缘检测之Scharr算子、Canny算子和LOG算子
[Python图像处理] 十九.图像分割之基于K-Means聚类的区域分割
[Python图像处理] 二十.图像量化处理和采样处理及局部马赛克特效
[Python图像处理] 二十一.图像金字塔之图像向下取样和向上取样
[Python图像处理] 二十二.Python图像傅里叶变换原理及实现
[Python图像处理] 二十三.傅里叶变换之高通滤波和低通滤波
[Python图像处理] 二十四.图像特效处理之毛玻璃、浮雕和油漆特效
[Python图像处理] 二十五.图像特效处理之素描、怀旧、光照、流年以及滤镜特效
[Python图像处理] 二十六.图像分类原理及基于KNN、朴素贝叶斯算法的图像分类案例
[Python图像处理] 二十七.OpenGL入门及绘制基本图形(一)
[Python图像处理] 二十八.OpenCV快速实现人脸检测及视频中的人脸

文章目录

  • 一.MoviePy简介及安装
  • 二.MoviePy基础用法
  • 三.MoviePy抖音短视频剪切
  • 四.MoviePy抖音短视频合并
  • 五.总结


一.MoviePy简介及安装

MoviePy是一个用于视频编辑的Python模块,包括切割、连接、标题插入、视频合成、非线性编辑,视频处理等功能,甚至可以用它增加一些自定义的高级的特效。此外,MoviePy可以读写绝大多数常见的音频和视频格式,包括GIF格式,并且可以在Windows / Mac / Linux上运行,这也以意味着,MoviePy项目可以部署到服务端,在服务端进行视频处理。该扩展包带有Python 2.7+和Python3版本,是一个视频编辑良好扩展包(ffmpeg亦推荐学习)。

在这里插入图片描述

下载地址:

  • https://pypi.org/project/moviepy/

Github:

  • https://github.com/Zulko/moviepy

在这里插入图片描述

本文主要通过MoviePy实现短视频的剪切和合并操作。随着自媒体公司频繁在各个平台进行视频搬运,对于视频原创性的要求越来越高,用MoviePy可以批量实现视频编辑,结合MoviePy的跨平台特性,可以实现在服务端视频采集,自动处理,发布的流水线作业。推荐ucsheep老师的部分文章:

  • MoviePy - 中文文档(一个专业的python视频编辑库)教程

MoviePy安装如下图所示:

  • pip install moviepy

在这里插入图片描述

在这里插入图片描述


常见错误
安装MoviePy运行代码如果报错缺少ImageMagick或decode转码错误,“This error can be due to the fact that ImageMagick is not installed on your computer”,这是需要安装ImageMagic可执行文件。ImageMagic是用在视频中填入文本信息的工具,需要单独下载exe程序安装。可以参考下面这篇文章解决。

  • https://blog.csdn.net/weixin_42081389/article/details/104322629
  • https://imagemagick.org/script/download.php#windows

安装过程注意勾选Install development headers and libraries for C and C++ 。

在这里插入图片描述

安装ImageMagick成功之后如下图所示:

在这里插入图片描述

接着修改MoviePy模块下的config_defaults.py文件,修改IMAGEMAGICK_BINARY值,改为刚刚安装ImageMagick的目录下。比如此时的安装目录,接着即可成功运行代码。

  • C:\Program Files\ImageMagick-7.0.10-Q16-HDRI

在这里插入图片描述

import osFFMPEG_BINARY = os.getenv('FFMPEG_BINARY', 'ffmpeg-imageio')
#IMAGEMAGICK_BINARY = os.getenv('IMAGEMAGICK_BINARY', 'auto-detect')#修改为刚刚ImageMagic的安装路径
IMAGEMAGICK_BINARY = r"C:\Program Files\ImageMagick-7.0.10-Q16-HDRI\magick.exe"


二.MoviePy基础用法

案例一:视频翻转
下面首先看一个简单的官方例子,它将视频翻转。

from moviepy.editor import *#视频旋转180度
clip = VideoFileClip("cat01.mp4").rotate(180)#The size of the clip, (width,heigth) in pixels
print(clip.size) #(720, 1280)#播放视频
#clip.ipython_display(width=100)#写入视频
clip.write_videofile("cat01_rotate.mp4")

输出结果如下图所示,成功将视频翻转,但是视频加载的时间较长。

在这里插入图片描述


案例二:自定义logo
再来看一个示例,它将在视频5s和10s之间的子剪辑屏幕中央添加一个标题,然后将结果写入一个新文件。

from moviepy.editor import *#加载视频5-10片段
clip = VideoFileClip("cat02.mp4").subclip(5,10)
print(type(clip))#降低音量x0.8
clip = clip.volumex(0.8)#生成文本 自定义颜色字体
text = "CSDN Eastmount 2020"
txt_clip = TextClip(text, fontsize=70, font='Simhei', color='blue')#屏幕中央显示5秒
txt_clip = txt_clip.set_position('center').set_duration(5)#Overlay text on video
result = CompositeVideoClip([clip, txt_clip])#写入文件
result.write_videofile("cat02_edited.mp4")

输出结果如下图所示,可以看到成功增加了水印“CSDN Eastmount 2020”。

在这里插入图片描述

在这里插入图片描述

进一步修改视频,可以实现随机时间、随机位置出现logo水印的功能,代码如下。

from moviepy.editor import *
import random#加载视频5-10片段
video = VideoFileClip("cat03.mp4").subclip(5,10)
times = video.duration#在不同位置出现4次
n = 4  
times_list = [i * (times / n) for i in range(n + 1)]
#[0.0, 1.25, 2.5, 3.75, 5.0]
print(times_list) 
logos = []#生成文本 自定义颜色字体
for i in range(n):txt_clip = TextClip("CSDN Eastmount 2020", fontsize=50, font='Simhei', color='blue')#显示时间 位置txt_clip = (txt_clip.set_start(times_list[i]).set_end(times_list[i + 1]).set_pos((random.randint(0, video.w), random.randint(0, video.h))))logos.append(txt_clip)#Overlay text on video
result = CompositeVideoClip([video, *logos])#写入文件 mp4文件默认用libx264编码 比特率单位bps
result.write_videofile("cat03_edited.mp4", codec="libx264", bitrate="10000000")

输出结果如下图所示:

请添加图片描述


案例三:MoviePy作者官方实现电影字幕

  • https://zulko.github.io/moviepy/examples/star_worms.html

在这里插入图片描述

import numpy as npfrom moviepy.editor import *
from moviepy.video.tools.segmenting import findObjects# WE CREATE THE TEXT THAT IS GOING TO MOVE, WE CENTER IT.
screensize = (720,460)
txtClip = TextClip('Cool effect',color='white', font="Amiri-Bold",kerning = 5, fontsize=100)
cvc = CompositeVideoClip( [txtClip.set_pos('center')],size=screensize)# THE NEXT FOUR FUNCTIONS DEFINE FOUR WAYS OF MOVING THE LETTERS# helper function
rotMatrix = lambda a: np.array( [[np.cos(a),np.sin(a)], [-np.sin(a),np.cos(a)]] )def vortex(screenpos,i,nletters):d = lambda t : 1.0/(0.3+t**8) #dampinga = i*np.pi/ nletters # angle of the movementv = rotMatrix(a).dot([-1,0])if i%2 : v[1] = -v[1]return lambda t: screenpos+400*d(t)*rotMatrix(0.5*d(t)*a).dot(v)def cascade(screenpos,i,nletters):v = np.array([0,-1])d = lambda t : 1 if t<0 else abs(np.sinc(t)/(1+t**4))return lambda t: screenpos+v*400*d(t-0.15*i)def arrive(screenpos,i,nletters):v = np.array([-1,0])d = lambda t : max(0, 3-3*t)return lambda t: screenpos-400*v*d(t-0.2*i)def vortexout(screenpos,i,nletters):d = lambda t : max(0,t) #dampinga = i*np.pi/ nletters # angle of the movementv = rotMatrix(a).dot([-1,0])if i%2 : v[1] = -v[1]return lambda t: screenpos+400*d(t-0.1*i)*rotMatrix(-0.2*d(t)*a).dot(v)# WE USE THE PLUGIN findObjects TO LOCATE AND SEPARATE EACH LETTER
letters = findObjects(cvc) # a list of ImageClips# WE ANIMATE THE LETTERS
def moveLetters(letters, funcpos):return [ letter.set_pos(funcpos(letter.screenpos,i,len(letters)))for i,letter in enumerate(letters)]clips = [ CompositeVideoClip( moveLetters(letters,funcpos),size = screensize).subclip(0,5)for funcpos in [vortex, cascade, arrive, vortexout] ]# WE CONCATENATE EVERYTHING AND WRITE TO A FILE
final_clip = concatenate_videoclips(clips)
final_clip.write_videofile('coolTextEffects.avi',fps=25,codec='mpeg4')

pip install scikit-image安装相关扩展包。

在这里插入图片描述



三.MoviePy抖音短视频剪切

我们通常在看抖音短视频过程中,通常会下载视频,但视频最后有个抖音的logo,我们能否用Python剪切视频去除logo,再合成集合呢?比如将某个UP主的猫视频自动处理成集合。

在这里插入图片描述

假设文件夹中有5个抖音短视频,如下图所示:

在这里插入图片描述

完整代码如下:

# -*- coding: utf-8 -*-   
import os
from moviepy.editor import *#递归获取文件名称
def file_name(file_dir):   L=[]   for root, dirs, files in os.walk(file_dir):  for file in files:  if os.path.splitext(file)[1] == '.mp4':  L.append(os.path.join(root, file))  return L #主函数
if __name__ == '__main__':filePath = 'vedio'file_list = file_name(filePath)k = 1for name in file_list:print(name)#获取视频总时间video = VideoFileClip(name)times = video.durationprint(times)#剪切视频广告 省略最后4秒video = VideoFileClip(name).subclip(0,times-4)result = "save" + str(k) + ".mp4"video.write_videofile(result)k = k + 1

如果运行速度较慢,可以使用线程进行优化或ffmpeg开启GPU加速。输出结果如下图所示,成功将视频LOGO删除。

在这里插入图片描述

在这里插入图片描述



四.MoviePy抖音短视频合并

案例一:视频常规合并
接着将视频合并生成合集,先给出一个最简单的代码,如下所示。

# -*- coding: utf-8 -*-   
import os
from moviepy.editor import *#递归获取文件名称
def file_name(file_dir):   L=[]   for root, dirs, files in os.walk(file_dir):  for file in files:  if os.path.splitext(file)[1] == '.mp4':  L.append(os.path.join(root, file))  return L #主函数
if __name__ == '__main__':filePath = 'vedio'file_list = file_name(filePath)k = 1L = []for name in file_list:print(name)#获取视频总时间video = VideoFileClip(name)times = video.durationL.append(video)print(times)#视频合成 帧数大致就是24final_clip = concatenate_videoclips(L)final_clip.to_videofile('./final.mp4', fps= 24, remove_temp=True)

运行结果如下图所示:

在这里插入图片描述

其中 final.mp4 是最终生成的文件,fps是每秒钟传输的帧数,比如人眼一般一秒钟能看到的帧数大致就是 24,而程序最终会生成一个临时文件,remove_temp=True 指的就是将这个临时文件删除。

注意:在我的电脑上,如果一次性合成的文件数过多,程序会崩溃,并且速度是真的慢!!!


案例二:视频预处理合并
同时,补充知乎“大坚果”老师读取视频文件合并的核心代码。

clip1 = VideoFileClip("1.flv").subclip(10,20) #读取视频,并截取10-20秒的内容
clip2 = VideoFileClip("2.webm").resize(0.60)  # 将视频画面尺寸缩小到60%
final_clip = concatenate_videoclips([clip1,clip2]) #视频合并
final_clip.write_videofile("hebing.mp4")

将多段视频以列表展现的形式显示

final_clip = clips_array([[clip1, clip2],[clip3, clip4]])

在这里插入图片描述

推荐CompositeVideoClips方法,可能比concatenate_videoclips、clips_array好用,它可选择起止位置,也可设置渐进切换。

video = CompositeVideoClip([clip1,                #starts at t=0clip2.set_start(5),   #start at t=5sclip3.set_start(9)])  #start at t=9s,fade-in 的形式转换
video = CompositeVideoClip([clip1,clip2.set_pos((45,150)),clip3.set_pos((90,100))])

案例三:多视频按规定合并
该案例也是MoviePy官方提供,这里参考ucsheep大佬的代码供大家学习,推荐大家去学习。

  • https://zulko.github.io/moviepy/examples/compo_from_image.html
  • https://blog.csdn.net/ucsheep/article/details/82787821

在这里插入图片描述

它需要按照我们指定的图片进行投影,注意是PNG透明图片。

在这里插入图片描述

这个特殊的合成任务要花费很长的时间,这里仅给出完整代码。

from moviepy.editor import *
from moviepy.video.tools.segmenting import findObjects# 加载用来指定区域的图像
im = ImageClip("../../ultracompositing/motif.png")# 加载这些区域返回一个ImageClip列表
regions = findObjects(im)# 载入美国国家公园的7个clip
clips = [VideoFileClip(n, audio=False).subclip(18,22) for n in[ "../../videos/romo_0004.mov","../../videos/apis-0001.mov","../../videos/romo_0001.mov","../../videos/elma_s0003.mov","../../videos/elma_s0002.mov","../../videos/calo-0007.mov","../../videos/grsm_0005.mov"]]# 把每一个clip都放置在对应的图片中的区域
comp_clips =  [c.resize(r.size).set_mask(r.mask).set_pos(r.screenpos)for c,r in zip(clips,regions)]cc = CompositeVideoClip(comp_clips,im.size)
cc.resize(0.6).write_videofile("../../composition.mp4")


五.总结

本篇文章主要讲解MoviePy视频编辑库基础知识,主要实现视频处理、视频剪切和视频拼接。但该扩展包也存在缺陷,速度非常慢。后续随着作者深入,希望能够分享更好的代码。希望这篇基础性文章对读者有一定帮助,也希望这些知识点为读者从事Python图像处理相关项目实践或科学研究提供一定基础。

2020年8月18新开的“娜璋AI安全之家”,主要围绕Python大数据分析、网络空间安全、人工智能、Web渗透及攻防技术进行讲解,同时分享CCF、SCI、南核北核论文的算法实现。娜璋之家会更加系统,并重构作者的所有文章,从零讲解Python和安全,写了近十年文章,真心想把自己所学所感所做分享出来,还请各位多多指教,真诚邀请您的关注!谢谢。

(By:Eastmount 2020-10-06 深夜10点夜于武汉 http://blog.csdn.net/eastmount/ )


参考文献:
[1] https://pypi.org/project/moviepy/
[2] https://github.com/Zulko/moviepy
[3] MoviePy - 中文文档(一个专业的python视频编辑库)教程
[4] https://blog.csdn.net/weixin_42081389/article/details/104322629
[5] https://blog.csdn.net/SnailPace/article/details/107016442
[6] https://zhuanlan.zhihu.com/p/46341173
[7] https://www.jianshu.com/p/98a0c091c4bf
[8] https://blog.csdn.net/mp624183768/article/details/81434408
[9] https://zulko.github.io/moviepy/examples/moving_letters.html
[10] https://blog.csdn.net/weixin_43354181/article/details/104272789

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 关于撰写综述的注意事项

    综述不仅是关于一个有趣的主题和相关资料的收集&#xff0c;这也是一个为您的领域的发展作出贡献的机会。一篇好的综述有可能会成为一个学科领域的权威指南并作为全球无数书籍和文章的参考。 然而&#xff0c;对于许多年轻研究人员来说&#xff0c;综述文章的关键构成要素仍然是…...

    2024/5/4 2:47:05
  2. [转]C++11中的内存模型上篇 - 内存模型基础

    Table of Contents CPU架构的演进 简单的多线程访问数据问题 两个线程依次执行 两个线程交替执行 不可能出现的情况 Sequential Consistency (顺序一致性&#xff09; 顺序一致性的缺点 全存储排序&#xff08;Total Store Ordering, 简称TSO&#xff09; 松弛型内存模…...

    2024/5/1 21:51:58
  3. java学习笔记14

    数组工具类 Arrays java.util.Arrays是一个与数组相关的工具类&#xff0c;里面提供了大量静态方法&#xff0c;用来实现数组常见的操作 public static String toString(数组);将参数数组变成字符串 public static void sort(数组);按升序将数组的元素进行排序 备注&#xff…...

    2024/4/24 7:04:32
  4. Ribbon负载均衡原理与 Feign客户端

    1&#xff0c;客户端本地负载均衡原理 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201006202315889.png?x-oss-processimage/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM4ODQ1Mjcx,size_16,color_FFFFFF,t_70#pic_cen…...

    2024/4/23 14:45:29
  5. redis6安装指南-linux环境(附gcc7.1离线升级)

    项目需要使用redis6&#xff0c;以为很简单的事情&#xff0c;结果花了大半天才装好&#xff0c;对出现的问题和解决方法做个记录&#xff0c;把经验分享给大家。 一、下载redis6最新版本 当然要去官网啦 https://redis.io/ 现在是2020年6月&#xff0c;最新版本是6.0.5&…...

    2024/4/28 23:01:40
  6. 嵌入式 pdf 书籍/文档 网盘下载

    嵌入式 pdf 书籍/文档 网盘下载 持续更新… 1、嵌入式C语言面试题汇总 地址&#xff1a;https://pan.baidu.com/s/1LtqdpW-_-aa6yCTPw5HO3g 提取码:ospv 2、程序员的自我修养—链接、装载与库 地址:https://pan.baidu.com/s/1ZRRidnvjW068fu0weqWVvA 提取码&#xff1a;wni8…...

    2024/4/26 8:16:41
  7. 防火墙三种模式(路由/透明/混合模式)的特点

    路由模式:所有接口配置ip地址&#xff0c;可以进行包过滤,但是修改拓扑时费事 透明模式:顾名思义,用户感觉不到防火墙的存在,所有接口不需要配置ip地址, trust连接内网, untrust连接外网 混合模式:防火墙同时存在路由接口和透明接口, 一般使用在双机热备,启动vrrp功能接口需要配…...

    2024/4/18 15:35:13
  8. DNA pull-down 要点

    一、原理概述 DNA pull-down是体外研究DNA与蛋白互作的有力工具。该技术将生物素标记的DNA片段结合在链霉亲和素磁珠上&#xff0c;再与细胞核蛋白孵育&#xff0c;纯化出与DNA片段互作的蛋白&#xff0c;洗涤洗脱得到的蛋白产物&#xff0c;做western-blot检测特定蛋白是否与靶…...

    2024/5/3 11:48:29
  9. Android 制作一款短视频app软件可在线观看(视频实时更新)

    Android 制作一款短视频app软件可在线观看&#xff08;视频实时更新&#xff09; 第一步&#xff1a;完成界面的设计 界面布局采用LinearLayout&#xff0c;添加TextView控件显示标题&#xff0c;添加4个Button按钮可切换不同的短视频内容&#xff0c;在添加一个RecyclerView控…...

    2024/4/17 8:27:44
  10. MathType中批量修改公式字体大小

    批量修改公式字体和大小的操作步骤&#xff1a; 步骤1 双击论文中的任意一个公式&#xff0c;打开MathType公式编辑器软件。 步骤2 单击菜单栏中的大小——定义命令&#xff0c;打开“定义尺寸”对话框。 步骤3 在“定义尺寸”对话框中&#xff0c;通过更改pt值的大小可以达到…...

    2024/5/3 12:57:06
  11. Ubuntu Centos静态ip设置

    Ubuntu Centos静态ip设置 1.实验环境 1.VMware16.0.0 2.Ubuntu16.04(安装教程) 3.Centos8 4.VMware网络模式&#xff1a;NAT 2.配置VMnet8 打开PowerShell&#xff0c;执行命令&#xff0c;查看虚拟网卡是否安装。 ipconfigVMnet8用于NAT模式。 若无上图两块虚拟网卡&#x…...

    2024/4/23 9:30:59
  12. 【啃书】《智能优化算法及其MATLAB实例》例4.3免疫算法求解TSP问题

    文章目录问题描述仿真过程matlab源码问题描述 仿真过程 matlab源码 %该脚本要命名为func3.m%%%%%%%%%%%%%%%%%%%%%%%%%%%%计算路线总长度%%%%%%%%%%%%%%%%%%%%%%%%function lenfunc3(D,f,N)lenD(f(N),f(1));for i1:(N-1)lenlenD(f(i),f(i1));end%%%%%%%%%%%%%%%%%%%%%%%免疫算…...

    2024/4/17 8:18:05
  13. 修改MathType公式编号

    1 解决同一章内自动编号不按顺序问题 选中不按顺序编号的第一个公式&#xff0c;点击MathType标签下的章&节&#xff0c;然后点击修改分隔符&#xff0c;在弹出的Modify Chapter/Section Break窗口中点Delete。 点击一次如果公式编号没有变化&#xff0c;重复上述操作&…...

    2024/4/10 13:04:46
  14. C语言小游戏------贪吃蛇----小白专用

    C语言贪吃蛇小游戏 个人小白&#xff0c;后期也做了一些改进&#xff0c;附原视频地址&#xff08;点击即可&#xff09; 废话在后面直接上程序 该程序在VS2019上可完美运行。 #include<stdio.h> #include<stdlib.h> #include<Windows.h> #include<ti…...

    2024/5/3 20:22:21
  15. Matlab R2016a 如何设置自己称心的工作区域

    使用matlab的过程中&#xff0c;经常使用的窗口有命令窗口、历史命令窗口、当前目录窗口等&#xff0c;有时我们会不小心把某些窗口关掉&#xff0c;半天恢复不了&#xff0c;很是着急。接下来&#xff0c;以Matlab R2016a为例&#xff0c;整理一下工作区域窗口的设置问题。 软…...

    2024/4/10 16:42:41
  16. 计算机网络与Java网络编程基础知识总结

    关于Java网络编程 计算机网络将地理位置不同的计算机通过通信线路连接起来&#xff0c;实现资源的共享和信息的传递&#xff0c;网络中的计算机通常称之为主机&#xff0c;而网络编程就是通过程序来实现两台以上主机之间的通信。 实际的通信网络内容较多&#xff0c;但是Java语…...

    2024/4/10 0:24:39
  17. 信息系统开发方法

    瀑布开发方法&#xff1a;整个开发过程中每个阶段都有一个开始点和结束点&#xff0c;一旦到达下一阶段&#xff0c;通常不允许再回到上一阶段&#xff0c;阶段间严格的顺序性和依赖性&#xff0c;只有前一阶段完成&#xff0c;才能开始下一阶段。前一阶段的输出文档是后一阶段…...

    2024/5/4 3:23:31
  18. 二叉树总结

    这里写自定义目录标题二叉树前序、中序、后序遍历比较递归版本迭代版本二叉树的层序遍历n叉树的前序遍历递归版本迭代版本n叉树的后序遍历递归版本迭代版本n叉树的层序遍历二叉树前序、中序、后序遍历比较 递归版本 前序遍历 中序遍历 后序遍历 迭代版本 前序遍历 中序遍…...

    2024/4/9 22:42:54
  19. 用户退出登录清空cookie

    ApiOperation(value "用户退出登录", notes "用户退出登录", httpMethod "POST") PostMapping("/logout") public IMOOCJSONResult logout(RequestParam String userId,HttpServletRequest request,HttpServletResponse response) …...

    2024/4/10 15:31:58
  20. 判断一个数是不是素数

    #include<iostream> #include<cmath> using namespace std; bool fac(int n) { for(int i2;i<sqrt(n);i) { if(n%i0) return false; } return true; } int main() { int number; cout<<"请输…...

    2024/4/12 8:34:48

最新文章

  1. 用魔法打败魔法:用360解除chrome浏览器的360主页

    面临的问题&#xff1a; 试了108种方法都是不好使的。 后来看到&#xff1a; https://blog.csdn.net/qq_30267617/article/details/120373704 的介绍&#xff0c;发现可以呀。 三个步骤 步骤1 单击“功能大全” 步骤2 单击“主页防护” 步骤3 在这里更改。...

    2024/5/4 4:22:51
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 分发饼干(C++ 贪心)

    目录 题目需求 贪心算法思想 什么是贪心 贪心算法的使用 贪心算法的优缺点 代码实现 后言 题目需求 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&…...

    2024/5/2 9:30:15
  4. 计组第三版书例题

    基础知识过一下 存储器与CPU的连接主要通过数据总线、地址总线和控制总线实现。CPU首先向存储器发送地址信号&#xff0c;然后发出读写控制信号&#xff0c;最后在数据总线上进行数据的读写操作 。这种连接方式确保了CPU能够正确地访问和控制存储器中的数据。 https://blog.cs…...

    2024/4/30 17:23:26
  5. 416. 分割等和子集问题(动态规划)

    题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义&#xff1a;dp[i][j]表示当背包容量为j&#xff0c;用前i个物品是否正好可以将背包填满&#xff…...

    2024/5/3 11:50:27
  6. 【Java】ExcelWriter自适应宽度工具类(支持中文)

    工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...

    2024/5/2 16:04:58
  7. Spring cloud负载均衡@LoadBalanced LoadBalancerClient

    LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon&#xff0c;直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件&#xff0c;我们讨论Spring负载均衡以Spring Cloud2020之后版本为主&#xff0c;学习Spring Cloud LoadBalance&#xff0c;暂不讨论Ribbon…...

    2024/5/2 23:55:17
  8. TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案

    一、背景需求分析 在工业产业园、化工园或生产制造园区中&#xff0c;周界防范意义重大&#xff0c;对园区的安全起到重要的作用。常规的安防方式是采用人员巡查&#xff0c;人力投入成本大而且效率低。周界一旦被破坏或入侵&#xff0c;会影响园区人员和资产安全&#xff0c;…...

    2024/5/3 16:00:51
  9. VB.net WebBrowser网页元素抓取分析方法

    在用WebBrowser编程实现网页操作自动化时&#xff0c;常要分析网页Html&#xff0c;例如网页在加载数据时&#xff0c;常会显示“系统处理中&#xff0c;请稍候..”&#xff0c;我们需要在数据加载完成后才能继续下一步操作&#xff0c;如何抓取这个信息的网页html元素变化&…...

    2024/5/3 11:10:49
  10. 【Objective-C】Objective-C汇总

    方法定义 参考&#xff1a;https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...

    2024/5/3 21:22:01
  11. 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】

    &#x1f468;‍&#x1f4bb;博客主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】&#x1f30f;题目描述&#x1f30f;输入格…...

    2024/5/3 23:17:01
  12. 【ES6.0】- 扩展运算符(...)

    【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数&#xff0…...

    2024/5/2 23:47:43
  13. 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?

    文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕&#xff0c;各大品牌纷纷晒出优异的成绩单&#xff0c;摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称&#xff0c;在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁&#xff0c;多个平台数据都表现出极度异常…...

    2024/5/3 13:26:06
  14. Go语言常用命令详解(二)

    文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令&#xff0c;这些命令可以帮助您在Go开发中进行编译、测试、运行和…...

    2024/5/3 1:55:15
  15. 用欧拉路径判断图同构推出reverse合法性:1116T4

    http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b&#xff0c;我们在 a i a_i ai​ 和 a i 1 a_{i1} ai1​ 之间连边&#xff0c; b b b 同理&#xff0c;则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然&#xff0…...

    2024/5/4 2:14:16
  16. 【NGINX--1】基础知识

    1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息&#xff0c;并安装一些有助于配置官方 NGINX 软件包仓库的软件包&#xff1a; apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...

    2024/5/3 16:23:03
  17. Hive默认分割符、存储格式与数据压缩

    目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限&#xff08;ROW FORMAT&#xff09;配置标准HQL为&#xff1a; ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...

    2024/5/3 1:55:09
  18. 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法

    文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中&#xff0c;传感器和控制器产生大量周…...

    2024/5/2 8:37:00
  19. --max-old-space-size=8192报错

    vue项目运行时&#xff0c;如果经常运行慢&#xff0c;崩溃停止服务&#xff0c;报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中&#xff0c;通过JavaScript使用内存时只能使用部分内存&#xff08;64位系统&…...

    2024/5/3 14:57:24
  20. 基于深度学习的恶意软件检测

    恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞&#xff0c;例如可以被劫持的合法软件&#xff08;例如浏览器或 Web 应用程序插件&#xff09;中的错误。 恶意软件渗透可能会造成灾难性的后果&#xff0c;包括数据被盗、勒索或网…...

    2024/5/2 9:47:25
  21. JS原型对象prototype

    让我简单的为大家介绍一下原型对象prototype吧&#xff01; 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定&#xff0c;每一个构造函数都有一个 prototype 属性&#xff0c;指向另一个对象&#xff0c;所以我们也称为原型对象…...

    2024/5/4 2:00:16
  22. C++中只能有一个实例的单例类

    C中只能有一个实例的单例类 前面讨论的 President 类很不错&#xff0c;但存在一个缺陷&#xff1a;无法禁止通过实例化多个对象来创建多名总统&#xff1a; President One, Two, Three; 由于复制构造函数是私有的&#xff0c;其中每个对象都是不可复制的&#xff0c;但您的目…...

    2024/5/3 22:03:11
  23. python django 小程序图书借阅源码

    开发工具&#xff1a; PyCharm&#xff0c;mysql5.7&#xff0c;微信开发者工具 技术说明&#xff1a; python django html 小程序 功能介绍&#xff1a; 用户端&#xff1a; 登录注册&#xff08;含授权登录&#xff09; 首页显示搜索图书&#xff0c;轮播图&#xff0…...

    2024/5/3 7:43:42
  24. 电子学会C/C++编程等级考试2022年03月(一级)真题解析

    C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...

    2024/5/3 1:54:59
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57