自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 JAVA生成指定位数随机数

// 生成随机数private String makeNum(){ Random random = new Random(); //生成一个随机数[0,9999999) 末尾加上“”表明是字符串类型 String num = random.nextInt(9999999) + ""; StringBuffer stringBuffer = new StringBuffer(); //不足7位用0填充 for (int i = 0; i < 7 - nu

2022-04-03 20:53:08 1603

原创 OpenCV 绘制图像轮廓

OpenCV 绘制图像轮廓绘制轮廓的一般步骤:1、读取图像image = cv2.imread('image_path')2、将原图转化为灰度图像image_gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)3、将灰度图像进行二值化阈值处理# 这里将阈值设置为127为例,最大阈值为255t, binary = cv.threshold(image_gray, 127, 255, cv.THRESH_BINARY)4、检测二值化图像中边缘轮廓

2021-08-18 14:25:17 1933

原创 OpenCV 理解腐蚀与膨胀(开、闭运算以及形态学方法)

OpenCV 腐蚀与膨胀(开、闭运算以及形态学方法)形态学方法:OpenCV 腐蚀与膨胀(开、闭运算以及形态学方法)1、图像的腐蚀与膨胀2、图像开运算、闭运算3、其他形态学方法4、总结1、图像的腐蚀与膨胀图像腐蚀的一般步骤:1、创建一个像素块(像素块可为任意形状,一般为矩形。自带一个核心,也叫做锚点,一般位于矩阵中央)2、将像素块中的核心像素依次置于图像每个像素点(遍历图像所有像素)。3、将像素块下所覆盖的所有像素的最小值赋给核心像素。图像膨胀的一般步骤:1、创建一个像素块(像素块可为任意形

2021-08-16 09:24:00 6875

原创 test15 颜色分类

test15 颜色分类题干:给定一个包含红色、白色和蓝色,一共n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、1 和 2 分别表示红色、白色和蓝色。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]代码:list1 = [2, 0, 2, 1, 1, 0]# 冒泡排序for i in range(0, len(list1)): for j in range(0, len(list1

2021-08-12 23:00:14 144

原创 test14 移动石子直到连续

test14 移动石子直到连续题干:三枚石子放置在数轴上,位置分别为 a,b,c。每一回合,我们假设这三枚石子当前分别位于位置 x, y, z 且 x < y < z。从位置 x 或者是位置 z 拿起一枚石子,并将该石子移动到某一整数位置 k 处,其中 x < k < z 且 k != y。当你无法进行任何移动时,即,这些石子的位置连续时,游戏结束。要使游戏结束,输出可以执行的最小和最大移动次数分别是多少示例 1:输入:a = 1, b = 2, c = 5输出:[

2021-08-12 22:59:05 69

原创 test13 实现Pow(x, n)

test13 实现Pow(x, n)1:实现Pow(x, n)题干:实现pow(x,n),即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例2:输入: 2.10000, 3输出: 9.26100示例3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25代码:def Pow(x, n): # 保留小数点后五位 return '%.5f' % x ** n

2021-08-12 22:58:00 82

原创 test12 数组中的最长山脉

test12 数组中的最长山脉题干:3:数组中的最长山脉我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3存在0 < i< B.length - 1使得B[0] < B[1] < … B[i-1] < B[i] > B[i+1] > … > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)给出一个整数数组A,返回最长“山脉”的长度。如果不含有 “山脉”则返

2021-08-12 22:56:38 67

原创 test11 灯泡开关

test11 灯泡开关题干:初始时有n个灯泡关闭。第 1 轮,你打开所有的灯泡。第2轮,每两个灯泡你关闭一次。第3轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭)。第i轮,每i个灯泡切换一次开关。对于第n轮,你只切换最后一个灯泡的开关。找出n轮后有多少个亮着的灯泡。示例:输入: 3输出: 1解释:初始时, 灯泡状态 [关闭, 关闭, 关闭].第一轮后, 灯泡状态 [开启, 开启, 开启].第二轮后, 灯泡状态 [开启, 关闭, 开启].第三轮后, 灯泡状态 [开启,

2021-08-12 22:55:08 62

原创 test10 加一

题目:Introduction:1:加一给定一个由 整数 组成的 非空 列表所表示的非负整数,在该数的基础上加一。最高位数字存放在列表的首位, 列表中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例:整数列表为:[9, 9, 9, 8]经过加1操作列表变为:[9, 9, 9, 9]整数列表为:[9, 9, 9, 9]经过加1操作列表变为:[1, 0, 0, 0, 0]代码:s = [9, 9, 9, 9]print(s)m = ''for x

2021-08-12 22:53:15 68

原创 OpenCV 禁止吸烟图像拼接

OpenCV 禁止吸烟图像拼接图像一:图像二:-————-———————————————————————————拼接代码如下:# -*- coding: utf-8 -*-# @Time : 2021/8/12# @Author : ZYh"""Introduction:禁止吸烟图像拼接"""import cv2 as cvdef overlay_img(img, img_over, img_over_x, img_over_y): # 背景图像宽、高、通道数

2021-08-12 22:50:28 383

原创 OpenCV使用阈值处理勾勒物体轮廓

OpenCV使用阈值处理勾勒物体轮廓# -*- coding: utf-8 -*-# @Time : 2021/7/29# @Author : ZYh"""Introduction:进行识别运算前,应将图像先转为灰度图像,再进行二值化阈值处理,就得到物体大致轮廓"""import cv2 as cv# 后面参数设为0,直接将图像读取为灰度图像image = cv.imread('car_20210524_162826.jpg')image_Gray = cv.cvtColo

2021-08-04 09:40:03 488

原创 OpenCV 仿射变换

OpenCV 仿射变换代码及相关注释如下:# -*- coding: utf-8 -*-# @Time : 2021/8/3# @Author : ZYh"""Introduction:仿射变换(平移,旋转,倾斜):dst = cv2.warpAffine(src, M, dsize, flags, borderMode, borderValue)参数: M->一个2行3列的矩阵,根据此矩阵的值变换原图中像素的位置 M又叫做仿射矩阵,实际上是2×3的列

2021-08-04 01:01:57 442

原创 OpenCV 阈值处理函数

OpenCV 阈值处理函数"""Introduction:阈值处理函数 方法:retval, dst = cv2.threshold(src, thresh, maxval, type) 参数依次为: src->被处理的图像(可以是多通道) thresh->阈值,阈值在125~150范围内取值的效果最好 maxval->阈值处理采用的最大值 typ

2021-08-04 00:58:18 523

原创 test9 合并两个有序数组

test9 合并两个有序数组合并两个有序数组解释:给你两个有序整数数组nums1和nums2,请你将nums2合并到nums1中,使nums1成为一个有序数组。说明:初始化nums1 和 nums2 的元素数量分别为m 和 n 。你可以假设nums1有足够的空间(空间大小大于或等于m + n)来保存 nums2 中的元素。输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]代码如下:

2021-07-29 11:31:55 62

原创 test8 连续数列

test8 连续数列2:连续数列解释:给定一个整数数组,找出总和最大的连续数列,并返回总和。输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。代码如下:nums = [-2, 1, -3, 4, -1, 2, 1, -5, 4]temp = nums[0] # 当前位res = nums[0] # 返回值for i in range(1, len(nums)): # 如果当前位与下一位的和没有下

2021-07-29 11:28:30 257

原创 test7 千位分割数

test7 千位分割数Introduction:1:千位分割数解释:给你一个整数n,请你每隔三位添加点(即 “.” 符号)作为千位分隔符,并将结果以字符串格式返回。输入:n = 123456789输出:“123.456.789”输入:n = 0输出:"0"代码如下:n = int(input())# 先将字符串反转后给变量ss = str(n)[::-1]# res用来存储反转后加完.的字符串res = ""# 反着遍历原来的字符串nfor i in range(len(

2021-07-29 11:27:03 138

原创 Pycharm 手动安装库

Pycharm 手动导入库具体操作如图打开File下的Settings,按照图示操作,可搜索到相关库,如搜索opencv库可在栏内搜索opencv,选中opencv-python,后再点击install package即显示如下表示库安装成功

2021-07-26 20:58:47 633

原创 test6 字符串轮转

字符串轮转题干:字符串轮转解释:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。代码:def reverseLeftWords(s, n): left, right = s[:n], s[n:] return right + leftinput_string = input()print(reverseLeftWo

2021-07-23 12:10:17 122

原创 test5 字符串压缩

字符串压缩题设:字符串压缩解释:字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)输入:“aabcccccaaa”输出:“a2b1c5”# iniString = input()# zipStr = ""# strCnt = 1# for i in range(len(iniString) - 1)

2021-07-23 12:08:01 78

原创 test4 回文排列

test4 回文排列# -*- coding: utf-8 -*-# @Time : 2021/7/22# @Author : ZYh"""Introduction:1:回文排列解释:给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。回文串不一定是字典当中的单词。输入:"tactcoa"输出:true(排列有"tacocat"、"atcocta",等等)"""input_str = in

2021-07-22 19:09:51 54

原创 Python中for循环跳过下一次迭代

Python中for循环跳过下一次迭代方法:# 假设遍历区间为0~9# 调用iter方法,参数是遍历0~9,赋值给新区间range_allrange_all = iter(range(0, 10))# 开始循环for i in range_all: if (i + 1) < len(string) and string[i] == string[i + 1]: # 或者写成range_all.__next__()的形式 # 调用next方法,可跳过下一

2021-07-22 18:26:41 1514

原创 OpenCV 创建黑白图像和RGB图像

OpenCV 创建图像# -*- coding: utf-8 -*-# @Time : 2021/7/20# @Author : ZYh"""Introduction:创建图像: ·OpenCV中,黑白图像实际是一个二维数组,彩色图像是一个三维数组。 数组中每个元素就是图像对应位置的像素值 ·数组索引、像素行列、像素坐标关系如下: 数组行索引 = 像素所在行数 - 1 = 像素纵坐标 数组列索引 = 像素所在列数 - 1

2021-07-20 11:26:00 5480 1

原创 OpenCV 使用NumPy库中对二维数组进行切片式索引操作

OpenCV NumPy库中对二维数组进行切片式索引操作首先先声明Python中切片相关知识:array[start :end] 代表遍历列表array中下标在区间[start, end)中的元素如果没有start,则默认从下标为 0的开始遍历如果没有end,默认从start遍历到最后一个元素上代码看例子:# 二维数组切片操作n = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])print(n[:2, 1:]) # 括号内第一个冒号代表行切片,另一个

2021-07-19 20:07:45 698 1

原创 OpenCV使用NumPy库创建数组

OpenCV 使用Numpy库创建数组代码及相关注释如下:# -*- coding: utf-8 -*-# @Time : 2021/7/19# @Author : ZYh"""Introduction:·创建数组方法: numpy.array(object, dtype, copy, order, subok, ndmin) object:任何具有数组接口方法的对象 dtype: 数据类型 copy: 可选参数,布尔型,默认True,则object对象被复制

2021-07-19 17:10:01 622 1

原创 OpenCV 合并BGR HSV图像通道

OpenCV 合并BGR HSV图像通道代码及介绍如下:# -*- coding: utf-8 -*-# @Time : 2021/7/17# @Author : ZYh"""Introduction:合并通道: OpenCV提供merge()方法,用来合并图像通道 语法:bgr = cv2.merge([b, g, r]) # 按B->G->R顺序合并通道 bgr = cv2.merge([r, g, b]) #

2021-07-17 09:24:09 1016

原创 OpenCV 拆分BGR HSV图像通道

分别拆分BGR图像中的通道和HSV图像中的通道# -*- coding: utf-8 -*-# @Time : 2021/7/16# @Author : ZYh"""Introduction:拆分通道: OpenCV提供split()方法,用来拆分图像通道 语法: b, g, r = cv2.split(bgr_image) b:B通道图像 g/r…… bgr_image: 一幅BGR图像 注:拆分BGR图像中的通道顺序

2021-07-16 23:05:17 1588 1

原创 OpenCV获取图片属性

# -*- coding: utf-8 -*-# @Time : 2021/7/16# @Author : ZYh"""Describe:获取图像属性shape: 若是RGB图像,获取一个由图像的 像素列数、像素行数和通道数 所组成的数组 若是灰度图像,获取一个包含图像的像素列数、像素行数的数组,即(像素行数, 像素列数)size: 获取图像包含的像素个数,其值为"像素列数 × 像素行数 × 通道数 "(灰度图像的通道数为 1)dtype: 获取图像数据类型

2021-07-16 21:31:04 496

原创 OpenCV色彩空间转换

# -*- coding: utf-8 -*-# @Time : 2021/7/16# @Author : ZYh"""Introduction: 1.彩色图像 是一种每个像素都是由红绿蓝三种不同颜色以不同的比例混合而成的图像 2.色彩空间类型转换: 同一幅图像可从一个色彩空间转换到另一个色彩空间 3.另外两个色彩空间:GRAY HSV 3.1 GRAY: 通常指灰度图像,灰度级别用区间[0,255]中数值表示 BGR转换到GRAY 调用cvt

2021-07-16 21:29:31 157

原创 Pycharm设置自动引入文件头

Pycharm设置自动引入文件头如图:

2021-07-16 21:26:50 119

原创 Pycharm 移动控制台位置

将Pycharm控制台移动到屏幕右侧如图:

2021-07-16 20:55:53 2084

原创 Pycharm 左侧控制按钮消失

Pycharm 左侧控制按钮消失恢复方法如图:

2021-07-16 20:54:38 874

原创 PHP 多态测试

<?phpinterface Device{ //定义实现接口 function check(); function go(); function close();}class Fan implements Device { //风扇类实现设备接口 public function check() { echo '检查风扇!<br />'; } public function go() {

2021-07-16 17:44:09 43

原创 Download Python OpenCV for Win10 Pycharm

第一部分:基于win10计算机视觉开源库 OpenCV的下载安装第一步:win+r输入cmd打开命令提示符窗口第二步:输入 “pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python”说明:1、https://pypi.tuna.tsinghua.edu.cn/simple这个网址是清华提供的用于下载OpenCV-Contrib-Python库的镜像地址2、pip命令是用于查找、下载、安装和卸载Pyth

2021-07-15 21:15:24 136

原创 九九乘法表 test3

9 9 乘法表# 9 9 乘法表for x in range(1, 10): for y in range(1,x + 1): # , end = ' ' 作用是去掉print()函数的自动换行,使用末尾加一个空格的形式 print("{} * {} = {}".format(y, x, x * y), end=' ') print("")...

2021-07-14 11:44:14 36

原创 水仙花数 test2

水仙花数 153 = 1^3 + 5^3 + 3^3for value in range(100, 1001):if ((value // 100) ** 3 + (value // 10 % 10) ** 3 + (value % 10) ** 3) == value:print(value)

2021-07-14 11:42:48 64

原创 累加 test1

累加n = input(“input n:\n”)n = int(n)s = 0for x in range(1, n + 1):s += xprint(s)

2021-07-14 11:40:25 29

原创 基于 Linux-Ubuntu下pygame库安装

若想安装python3版本的pygame库,打开控制台输入:python3 -m pip install pygame敲下回车,随后会出现安装信息如图:下载完成后下方会显示Successfully installed pygame-版本号若想安装python2版本的pygame库,只需要将命令改为python -m pip install pygame即可,不再举例接下来验证我们所安装的pygame首先控制台输入python3打开解释器出现刚才安装的对应版本号,如图黄色字体:到这里

2021-07-13 10:55:29 416 1

原创 51单片机 矩阵密码锁

代码编译环境: Keil uVision5烧入软件: stc-isp由于代码较多,所以需要采用模块化主函数,代码从此处开始执行main.c#include <REGX52.H>#include "Delay.h"#include "LCD1602.h"#include "MatrixKey.h"unsigned char KeyNum;unsigned int Password, Count;void main(){ LCD_Init(); LCD_ShowSt

2021-07-11 11:11:33 885 1

原创 51单片机LED流水灯

实现LED模块流水效果#include <REGX52.H>#include <INTRINS.H>//生成延时x ms函数void Delay1ms(unsigned int xms) //@12.000MHz{ unsigned char i, j; while(xms) { i = 2; j = 239; do { while (--j); } while (--i); xms--; }}void main(){

2021-07-11 10:58:37 125

原创 医院挂号系统,队列小项目

本项目采用顺序队列,实现挂号队列中的先进先出,后进后出的特征具体代码如下:/** * 使用顺序队列,通过开辟大空间内存,避免假溢出 * 由于菜单函数问题较多,所以没有采用调用菜单函数形式,而是直接在主函数里面写出switch分支语句 */#include <stdio.h>#include <malloc.h>#include <stdlib.h>#define max 1000 //有效存储100个数据 typedef struct { in

2021-06-05 10:10:07 765

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除