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

做红包网站是犯法的吗小程序开发平台哪里做得好

做红包网站是犯法的吗,小程序开发平台哪里做得好,对网站建设的问题,网站建设公司做的网站目录 1 创建和显示窗口... - 4 - 2 加载显示图片... - 6 - 3 保存图片... - 7 - 4 视频采集... - 8 - 5视频录制... - 11 - 6 控制鼠标... - 12 - 7 TrackBar 控件... - 14 - 8.RGB和BGR颜色空间... - 16 - 9.HSV和HSL和YUV.. - 17 - 10 颜色空间的转化... - 18 - … 目录 1 创建和显示窗口... - 4 - 2 加载显示图片... - 6 - 3 保存图片... - 7 - 4 视频采集... - 8 - 5视频录制... - 11 - 6 控制鼠标... - 12 - 7 TrackBar 控件... - 14 - 8.RGB和BGR颜色空间... - 16 - 9.HSV和HSL和YUV.. - 17 - 10 颜色空间的转化... - 18 - 11 mat的深浅拷贝... - 19 - 12 颜色通道的分离与合并... - 20 - 13 画直线... - 22 - 14 绘制矩形和圆... - 23 - 15 绘制椭圆... - 24 - 16 绘制多边形和填充多边形... - 25 - 17 绘制文本及中文文本... - 26 - 18 作业:根据需要画图... - 28 - 19 图像运算之加减乘除... - 30 - 20 图片的融合... - 32 - 21 Opencv的位运算... - 33 - 22 resize() 用法... - 35 - 23 图片上加Logo(完美贴合) - 36 - 24 图像的翻转与旋转... - 39 - 25 仿射变换之平移... - 40 - 26 仿射变换之获取变换矩阵... - 42 - 27 仿射变换之透视变换... - 44 - 28 卷积操作... - 45 - 29 均值滤波和方盒滤波... - 48 - 30 高斯滤波... - 49 - 31 中值滤波... - 50 - 32 双边滤波... - 51 - 33 索贝尔(sobel) 算子... - 52 - 34 scharr算子... - 53 - 35 拉普拉斯算子... - 54 - 36 形态学... - 55 - 37 Canny边缘检测... - 56 - 38 全局二值化... - 57 - 39 自适应阈值二值化... - 58 - 40 腐蚀操作... - 59 - 41 获取形态学卷积核... - 60 - 42 膨胀操作... - 61 - 43 开运算... - 62 - 44 闭运算... - 63 - 45 形态学梯度... - 64 - 46 顶帽操作... - 65 - 47 黑帽操作... - 66 - 48 查找轮廓... - 67 - 49 绘制轮廓... - 68 - 50 计算轮廓面积和周长... - 69 - 51 多边形逼近... - 71 - 52 凸包... - 72 - 53 最小外接矩形和最大外接矩形... - 74 - 54 高斯金字塔... - 76 - 55 拉普拉斯金字塔... - 78 - 56 图形直方图介绍... - 78 - 57 使用Opencv统计直方图... - 79 - 58绘制直方图... - 79 - 59用掩膜的直方图... - 80 - 60图均衡化... - 82 - 61 车辆统计项目(一)... - 83 - 71 特征检测基本概念... - 89 - 72 harris 角点检测数学原理1. - 90 - 73 Harris角点检测数学原理2. - 90 - 74 harris 角点检测应用... - 90 - 75 sift算法原理... - 91 - 76 sift算法使用... - 91 - 77 shi-tomasi 角点检测... - 91 - 1 创建和显示窗口 namedWindow() 创建命名窗口imshow() 显示窗口destroyAllwindws() 摧毁窗口resizeWindow() 改变窗口大小waitKey() 等待用户输入import cv2 # 创建窗口之前不要调整窗口大小 cv2.namedWindow('window', cv2.WINDOW_NORMAL) # 创建窗口 cv2.resizeWindow('window', 600, 800) # 调整窗口大小 # 显示图像 image = cv2.imread('path_to_image') cv2.imshow('window', image) # 等待按键后关闭窗口 cv2.waitKey(0) cv2.destroyAllWindows() 确保在调用 cv2.resizeWindow 之前窗口已经创建,并且在窗口存在的情况下调整其大小。 ord()计算ASCII数值import cv2#创建窗口# WINDOW_NORMAL 可以让窗口大小变得可调节,默认WINDOW_AUTOSIZE 自动大小cv2.namedWindow('new',cv2.WINDOW_NORMAL) cv2.resizeWindow('new',600,800)# 展示名字为window的窗口cv2.imshow('window',0) #没有内容只好写0cv2.resizeWindow('window',600,800)# 等待按键输入;0表示接收任意按键,如果给其他整数,表示等待按键的时间,单位毫秒;可以利用waitKey()实现关闭窗口key = cv2.waitKey(0) #key 为键盘输入的ASCII码if key 0xFF == ord('q'): print('准备销毁窗口') cv2.destroyAllWindows() # 销毁所有窗口2 加载显示图片 imread(path,flag):使用imread可以读取图片,默认读取的是彩色图片。Matplotlib显示的图片和实际不一样,因为opencv读取的颜色通道是按照BGR排列的,一般照片是RGB,为了显示正常要用opencv的显示方法: 如果常用显示图片可以封装成函数,以后可以使用(自己所有的功能都可以封装起来,以后导入就可以直接用,方便积累) import cv2# 显示图片def cv_show(name,img): cv2.imshow('name',img) cv2.waitKey(0) cv2.destroyAllWindows() import cv2import monkeyimport matplotlib.pyplot as pltimport numpy as np# 读取图片img = cv2.imread('2.jpg')# 显示图片monkey.cv_show('侯文广',img) monkey.music_play() 3 保存图片 imwrite(path,img):使用imwrite保存图片 “./123.png” # 当前目录下的图片。 import cv2 cv2.namedWindow('img',cv2.WINDOW_NORMAL) #创建一个窗口cv2.resizeWindow('img',320,240) #设置窗口尺寸img = cv2.imread('./2.jpg') # 载入当前目录下的图片#利用while 循环优化退出逻辑while True: cv2.imshow('img',img) key = cv2.waitKey(0) #接收键盘的输入字母的ASCII码 if(key0xff==ord('q')): break elif(key0xff==ord('s')): cv2.imwrite(r'D:/5.png',img) print('保存成功') break else: print(key) breakcv2.destroyAllWindows() 4 视频采集 视频是由图片组成的,视频的每一帧就是一幅图片,一般是30帧。 cv2.VideoCapture可以捕获摄像头,用数字来表示不同的设备,比如0,1 如果是视频文件直接指定路径即可。 读取视频 import cv2# 创建窗口cv2.namedWindow('video',cv2.WINDOW_NORMAL) cv2.resizeWindow('video',640,380)# 打开视频文件vc = cv2.VideoCapture('./nine.mp4')# 循环读取摄像头每一帧while True: # 读每一帧数据,返回标记和这一帧数据frame,True表示读到了数据,False表示没读到数据 ret,frame = vc.read() # ret表示标记,frame表示图片 # 可以根据ret做个判断 if not ret: # 没有读到数据 break # 显示窗口 cv2.imshow('video',frame) # 退出条件 key = cv2.waitKey(1) if key == ord('q'): break# 别忘了释放资源vc.release() cv2.destroyAllWindows() 读取摄像头 import cv2# 创建窗口cv2.namedWindow('video',cv2.WINDOW_NORMAL)cv2.resizeWindow('video',640,380)# 打开摄像头vc1 = cv2.VideoCapture(0)# 循环读取摄像头每一帧while True: # 读每一帧数据,返回标记和这一帧数据frame,True表示读到了数据,False表示没读到数据 ret,frame = vc1.read() # ret表示标记,frame表示图片 # 可以根据ret做个判断 if not ret: # 没有读到数据 break # 显示窗口 cv2.imshow('video',frame) # 退出条件 key = cv2.waitKey(1000//30) #每帧图片之间的间隔时间ms(30帧,每帧之间隔多久) if key ==ord('q'): break# 别忘了释放资源vc1.release() cv2.destroyAllWindows() 5视频录制 VideoWriter:参数一为输出文件,参数二为多媒体文件格式(VideoWriter.fourcc),参数三为帧率,参数四为分辨率。write 编码并写入缓存release 缓存内容写入磁盘,并释放资源import cv2 cap = cv2.VideoCapture(0) # 打开摄像头# *mp4v就是解包操作,等同于'm','p','4','v'fourcc = cv2.VideoWriter.fourcc(*'mp4v')# (640,480)表示摄像头拍视频,这个大小搞错了不行# 主要是分辨率vw = cv2.VideoWriter('output.mp4', fourcc, 20, (640, 480))while cap.isOpened(): ret, frame = cap.read() if not ret: print('can not receive framne ,Exiting ....') break vw.write(frame) cv2.imshow('frame', frame) if cv2.waitKey(1) == ord('q'): break6 控制鼠标 Opencv允许对窗口上的鼠标进行操作 setMouseCallback(winname,callback,userdata),winname是窗口的名字,callback是回调函数,userdata是给回调函数的参数,callback(event,x,y,flags,userdata)回调函数包含这5个参数,event是事件(鼠标移动,左键,右键),x,y是点鼠标的坐标点,flags主要用于组合键,userdata是上面setMouseCallback的userdata鼠标事件: EVENT_MOUSEMOVE 0 鼠标移动EVENT_LBUTTONDOWN 1 按下鼠标左键EVENT_RBUTTONDOWN 2 按下鼠标右键EVENT_MBUTTONDOWN 3 按下鼠标中键EVENT_LBUTTONUP 4 左键释放EVENT_RBUTTONUP 5 右键释放EVENT_MBUTTONUP 6中键释放EVENT_LBUTTONDBLCLK 7 左键双击EVENT_RBUTTONDBLCLK 8 右键双击EVENT_MBUTTONDBLCLK 9 中键双击EVENT_MOUSEWHEEL 10鼠标滚轮上下滚动EVENT_MOUSEHWHEEL 11鼠标左右滚动Flags: EVENT_FLAG_LBUTTON 1 按下左键EVENT_FLAG_RBUTTON 2 按下右键EVENT_FLAG_MBUTTON 4 按下中键EVENT_FLAG_CRTLKEY 8 按下CTRL键EVENT_FLAG_SHIFTKEY 16 按下SHIFTKEY键EVENT_FLAG_ALTKEY 32 按下ALT键import cv2import numpy as np# 函数名可以随便取,但是必须5个参数def mouse_callback(event,x,y,flags,userdata): # 内容根据具体作用进行更换(鼠标在窗口操作会触发函数) print(event,x,y,flags,userdata) # 根据event或者flags的值来定义函数 # 按下鼠标右键退出 if event == 2: cv2.destroyAllWindows()# 创建窗口cv2.namedWindow('mouse',cv2.WINDOW_NORMAL)# 窗口是宽度(列)高度(行)cv2.resizeWindow('mouse',640,360)# 设置鼠标回调函数# userdata是'123'cv2.setMouseCallback('mouse',mouse_callback,'123')# 生成全黑图片# 先行(高)后列(宽)img = np.zeros((360,640,3),np.uint8)while True: cv2.imshow('mouse',img) key = cv2.waitKey(1000//30) if key 0xff == ord('q'): breakcv2.destroyAllWindows()7 TrackBar 控件 可以拖动的控件。 表示拖动了多少值。最多三原色控制 createTrackbar(trackbarname,winname,value,count,onChange)创建TrackBar控件,value为trackbar的默认值,count为bar的最大值,trackbar的名字,窗口的名字。回调函数(trackbar动了会触发的结果) getTrackbarPos(trackbarname,winname)获取TrackBar当前值。import cv2import numpy as np# 创建窗口cv2.namedWindow('trackbar',cv2.WINDOW_NORMAL) cv2.resizeWindow('trackbar',640,360)# 定义回调函数# 触发def callback(value): if value = 50: print(value)# 创建trackbarcv2.createTrackbar('R','trackbar',0,255,callback) cv2.createTrackbar('G','trackbar',0,255,callback) cv2.createTrackbar('B','trackbar',0,255,callback)# 创建一个背景图片img = np.zeros((360,640,3),np.uint8)while True: # 获取当前trackBar的值 r = cv2.getTrackbarPos('R','trackbar') g = cv2.getTrackbarPos('G', 'trackbar') b = cv2.getTrackbarPos('B', 'trackbar') # 改变背景图颜色(bgr顺序) img[:] = [b,g,r] cv2.imshow('trackbar',img) key = cv2.waitKey(1000//30) if key ==ord('q'): breakcv2.destroyAllWindows() 8.RGB和BGR颜色空间 Opencv默认使用BGR排列顺序 9.HSV和HSL和YUV Opencv采用最多HSV色彩空间 Hue:色相取值0—360°,从红色开始逆时针方向计算,红色为0°,绿色120°,蓝色240°。 Saturation:饱和度取值0—100%,饱和度高颜色越饱和,光谱色越多。越低越浅色。 Value(brightness):明度,光亮程度,0%黑,100%白 HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。HSV色系对用户来说是一种直观的颜色模型,对于颜色,人们直观的会问”什么颜色?深浅如何?明暗如何?“,而HSV色系则直观的表示了这些信息。 每一种颜色都是由色相(Hue,简H),饱和度(Saturation,简S)和色明度(Value,简V)所表示的。这个模型中颜色的参数分别是:色调(H),饱和度(S),亮度(V)。 色调H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,取值范围为0°~360°。若从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,紫色为300°; 饱和度S:取值范围为0.0~1.0; 亮度V:取值范围为0.0(黑色)~1.0(白色)。 10 颜色空间的转化 cvtColor(img,colorspace):颜色转化关键APIimport cv2def callback(value): # 鼠标不同操作value不同值 print(value) cv2.namedWindow('color',cv2.WINDOW_NORMAL) cv2.resizeWindow('color',640,480) img = cv2.imread('2.jpg')# 常见颜色空间转换colorspaces = [cv2.COLOR_BGR2RGBA,cv2.COLOR_BGR2BGRA,cv2.COLOR_BGR2GRAY,cv2.COLOR_BGR2HSV,cv2.COLOR_BGR2YUV]# trackbarcv2.createTrackbar('curcolor','color',0,4,callback)while True: # 获得trackbar上的值 index = cv2.getTrackbarPos('curcolor','color') # 颜色空间转化API cvt_img = cv2.cvtColor(img,colorspaces[index]) cv2.imshow('color',cvt_img) key = cv2.waitKey(1000//30) if key 0XFF == ord('q'): breakcv2.destroyAllWindows()11 mat的深浅拷贝 Mat是Opencv在C++语言中用来表示图像数据的一种数据结构,在python中转化为numpy的ndarray。 MAT 数据结构 由header和data组成。Header中记录了图片的维数,大小,数据类型等数据。Ndarray的四种常见属性:data(数据存放的地址),size(元素总个数),dtype(数据类型),shape(形状) Mat 共享数据Header 不同,data相同。 Mat的深浅拷贝就是对ndarry的深浅拷贝。 import cv2import numpy as np img = cv2.imread('2.jpg')
http://www.hkea.cn/news/14557880/

相关文章:

  • 黄页直播免费观看大全网站数据做图网站有哪些
  • 母婴网站设计开发厦门it做网站最强
  • 景德镇网站建设景德镇所有网上购物的网站
  • 电子商务网站的设计wordpress 双语
  • 护肤品网站建设前的行业分析建设网站 教学反思
  • 网站与后台个人建网站运营.
  • 网站开发nodejsh5开发工具有哪些
  • 外贸网站wordpress加ssl二级网站建设基本情况
  • 做网站时搜索的代码是什么谷歌广告代理商
  • dw做响应式网站怎么设置网站
  • 网络公司网站绪论Mac怎么搭建网站开发环境
  • 免费的网站程序英国做deal的网站
  • 韩国儿童才艺网站建设模板专业的移动网站建设公司排名
  • 重庆铜梁网站建设公司wordpress安装和使用
  • 深圳网站建设有免费的吗wordpress主题模块添加
  • 建成学校网站申请免费域名邮箱
  • 酒店类的电影网站模板网页设计网站怎么做特效
  • 怎么建设seo自己网站网站keyword如何排列
  • 北京优化网站建设网站后台添加查看爬虫的痕迹
  • 网站没制作好可以备案吗一对一直播网站开发
  • 辽宁省住房城乡建设厅网站站长之家站长工具综合查询
  • 邯郸网站建设方案wordpress相同的cms
  • 网站维护推广怎么做网站模板拍卖
  • 山西省住房和建设厅网站网页制作素材软件有哪些
  • 网站建设课程设计报告总结wordpress上传大图
  • 中国联通网站备案管理系统温州网站推广有哪些方法
  • 网站开发 访问速度慢wordpress自动加文章tittle
  • 有哪些文本封面做的好的网站六站合一的优势
  • 国内最好用的免费建站平台手机商城系统开发
  • 电子商务网站建设课件苏州哪里做网站