Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >从零学起之安卓篇《按键精灵安卓版找图找色应用汇总介绍》更新20

从零学起之安卓篇《按键精灵安卓版找图找色应用汇总介绍》更新20

作者头像
用户3519280
发布于 2023-07-07 12:43:15
发布于 2023-07-07 12:43:15
1.1K07
代码可运行
举报
文章被收录于专栏:c++ 学习分享c++ 学习分享
运行总次数:7
代码可运行

本期主题:介绍目前手机按键(按键精灵安卓版)在编写脚本中,都需要用到哪些方式进行图色识别。 惯例先讲好处: 1、找色,如何计算颜色相似度,解决不同款式手机中画面颜色差异的问题。 2、找图,不太推荐,我们来聊聊多点找色,解决找图缓慢不效率,判断不准确的问题。

科普小技巧:关于多点取色如何获取点阵特征(注意手机按键使用,多点找色取点不宜超过10个),请查看以下帖子 按键精灵(PC版):插件教学之《Color插件的多点找色原理介绍》 从零学起之安卓篇《如何简单获取手机画面导入PC按键抓抓》

正题一:找色,先介绍下手机按键自带的找色命令。

固定坐标获取单点颜色 注解:获取坐标X与Y位置的颜色值信息,返回存入变量col中。

  1. Dim col,x,y
  2. col=GetPixelColor(x,y)
  3. TracePrint "颜色=" & col

复制代码

区域范围查找单点颜色 注解:变量intX, intY需要预先定义。如果您还没有定义该变量,请取消下面一行的注释。 如果没有找到,intX和intY的值都会被置为-1,那么这里我们只需要判断一个值就可以确认是否找到。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Dim intX, intY
FindColor 0, 0, 720, 1280, "0000FF", 0, 0.9, intX, intY
//如果没有找到,intX和intY的值都会被置为-1,那么这里我们只需要判断一个值就可以确认是否找到。
If intX > 0 Then
//如果intX大于0,说明找颜色,IntX与IntY分别表示这颜色的位置坐标
TracePrint "找到颜色,坐标=" & intX & "," & intY
Else
//否则
TracePrint "没找到颜色"
End If

复制代码

要点讲解:如何判断两个颜色相似度,以便解决单点颜色判断上的误差问题,以下提供两个写好的函数模块给大家学习。


函数名称:IsCol 函数功能:通过计算16进制颜色值中的RGB平均差值,得出两个颜色值相似度是否到达对应百分比 函数参数: 参数1:字符串型,16进制颜色值 参数2:字符串型,16进制颜色值 参数3:整数型,相似度 返回值:True 或 False(符合或不符合) 函数范例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'判断两个16进制值相似度是否到达对应百分比
Function IsCol(col1,col2,n)
IsCol=False
Dim r1,g1,b1
Dim r2,g2,b2
ColorToRGB col1,r1,g1,b1
ColorToRGB col2,r2,g2,b2
If 1 - (Abs(r1 - r2) + Abs(g1 - g2) + Abs(b1 - b2)) / 255 / 3 >= n Then IsCol=True
End Function

复制代码

函数名称:CmpCol 函数功能:获取固定坐标点16进制颜色值,传入IsCol函数进行相似度对比,得出两个颜色值相似度是否到达对应百分比 函数参数: 参数1:整数型,屏幕X坐标 参数2:整数型,屏幕Y坐标 参数3:字符串型,16进制颜色值 返回值:True 或 False(符合或不符合)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'固定坐标单点模糊找色
Function CmpCol(x,y,col,n)
CmpCol=False
If x < 0 or y < 0 Then Exit Function
Dim temp_col
temp_col=GetPixelColor(x,y)
If temp_col=col Then
CmpCol=True
Else
CmpCol=IsCol(col,temp_col,n)
End If
End Function
复制代码

1.5.1新增命令介绍


函数名称:CmpColor 函数功能:比较指定坐标点(x,y)的颜色,支持多色、偏色、相似度比较 函数参数: 参数1:整数型,屏幕X坐标 参数2:整数型,屏幕Y坐标 参数3:字符串型,16进制颜色值 参数4:整数型,颜色相似度(推荐0.9) 返回值:整数型,没找到返回-1,找到返回对应颜色序号,从0开始 调用范例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Dim ret
ret = CmpColor(100,200,"FFFFFF|0000FF-000000|00FF00-101010",0.9)
If ret = -1 Then
TracePrint "颜色都不相等"
Else
TracePrint "匹配颜色的序号为:" & ret
End if

复制代码

批注: 如果(100,200)的颜色是FFFFFF,则返回0 如果(100,200)的颜色是0000FF,则返回1 如果(100,200)的颜色是00FF00或偏色在101010范围内,则返回2 以此类推


正题二:找图?不不,我是来推荐多点找色的,惯例先介绍下自带的找图命令。


区域范围查找图片 注解:变量intX, intY需要预先定义。如果您还没有定义该变量,请取消下面一行的注释。 如果没有找到,intX和intY的值都会被置为-1,那么这里我们只需要判断一个值就可以确认是否找到。 附件路径(Attachment:),由于各自手机文件路径各不相同,这里我还是推荐用附件路径吧,就下面例子这样。(提示:找图默认支持PNG格式,但也支持BMP格式)

1.5语法(增加偏色参数)

Dim intX, intYFindPic 0, 0, 0, 0, "Attachment:图片名称.png", "000000", 0, 0.9, intX, intYIf intX > 0 Then//如果intX大于0,说明找颜色,IntX与IntY分别表示这颜色的位置坐标TracePrint "找到图片,图片左上角点位置坐标:" & intX & "," & intYElse//否则TracePrint "找图失败"End If 复制代码

1.3语法

Dim intX, intYFindPic 0, 0, 0, 0, "Attachment:图片名称.png", 0, 0.9, intX, intYIf intX > 0 Then//如果intX大于0,说明找颜色,IntX与IntY分别表示这颜色的位置坐标TracePrint "找到图片,图片左上角点位置坐标:" & intX & "," & intYElse//否则TracePrint "找图失败"End If 复制代码

  1. Dim intX, intY
  2. FindPic 0, 0, 0, 0, "Attachment:图片名称.png", "000000", 0, 0.9, intX, intY
  3. If intX > 0 Then
  4. //如果intX大于0,说明找颜色,IntX与IntY分别表示这颜色的位置坐标
  5. TracePrint "找到图片,图片左上角点位置坐标:" & intX & "," & intY
  6. Else
  7. //否则
  8. TracePrint "找图失败"
  9. End If

复制代码 1.3语法

  1. Dim intX, intY
  2. FindPic 0, 0, 0, 0, "Attachment:图片名称.png", 0, 0.9, intX, intY
  3. If intX > 0 Then
  4. //如果intX大于0,说明找颜色,IntX与IntY分别表示这颜色的位置坐标
  5. TracePrint "找到图片,图片左上角点位置坐标:" & intX & "," & intY
  6. Else
  7. //否则
  8. TracePrint "找图失败"
  9. End If

复制代码

要点讲解:如何提高一个图像识别的效率与精确度。


首先想提高图像判断效率,那么我们得知道找图的原理方式,这样才能从中了解时间都耗到哪里去了,都做了什么,是否有什么方式可以减少时间,减少不必要的操作以达到节约时间又不影响图像判断结果。 简单分析: 1、确认找图都有什么步骤。 2、通过哪些步骤配合得到结果。 3、在不影响结果的情况下去除不必要的步骤以达到节约时间的目的,提高效率。


找图原理大致方式:(我这里以简单通俗的方式描述下找图原理,可能与真实原理有些出路,请大家无视) 第一步:全屏获取图色信息,获取整个屏幕所有像素点的颜色信息,临时保存。 第二步: 1、取要找的图片左上角第一个点颜色,进行范围查找单色,找到则临时记录那点坐标。 2、以该点为起点,对图片剩余部分全部像素点的颜色信息进行匹配判断,如果都相同,则说明这张图片找到,返回值起点坐标X与Y的值。 3、如果不是则继续循环扫描剩余部分,继续找符合第一点颜色的位置作为起点继续匹配,直到匹配正确或返回 -1,-1表示没有符合特征。 第三步:释放掉第一步临时保存的图色信息。(释放内存占用)


以上步骤了解,我们可以明确,时间都耗在整张图片全部点阵的匹配上了。 试想下,一张10*10的图片,每次找到起点,都必须进行100次的信息对比,如果在720*1280范围找图,再没找到匹配正确的图片时,前面疑似的部分每个起点都需要进行100次的信息对比,这样整体时间就消耗掉了。


那么:问大家一个简单的问题,判断一张图片是否存在的目的是什么,是否是判断图像中某个图像特征是否存在,比如某个图标?某个文字?某个符号?总的描述,就是几个颜色点,按照对应的形状排列起来的特征。 既然:找图的目的只是判断里面其中一小部分图色信息是否匹配,那么我们为何要把整张图片进行匹配呢? 结论:这里我们分析总结,我们其实只要确认一个范围内少部分颜色点的排列特征形状颜色是否匹配。


通俗点比喻:把找图找色比喻为去仓库取物。

单独执行找图 或 单独执行找色。

仓库取物。

全屏截图保存内存中

打开仓库大门

对获取到的信息进行匹配,取出符合条件的信息。

进入仓库搜索制定物品搬出。

释放内存中临时储存信息。

关闭仓库大门。

总结:如果我需要对当前屏幕画面做一百次或更多次找图或取色,直接调用会导致每次执行取色匹配时对全屏图像进行临时储存,判断,再释放,再记录再释放,增加额外不必要的资源消耗,等于去仓库取100个物品,需要开关一百次大门,完全无意义,以下代码中用到KeepCapture与ReleaseCapture命令的作用就是事先把大门一直开着,直到我取完物品,再关闭。


总结:也许我以上墨迹可能许多新同学暂时还无法理解完全,但没关系,你们只要最后知道多点找色比找图高效精确即可。


不啰嗦了,以下直接把目前常用的函数模块发出来,只想有功能用的同学可以 Ctrl+C → Ctrl+V 完事,想了解具体原理并学习知识的可以细细品读!有描述不当之处可以跟帖留言或各大按键群里给我留言。


(本人联系方式按键各大群)


函数名称:CmpMultiCol 函数功能:固定坐标多点模糊找色 函数参数: 参数1:整数型,屏幕X坐标 参数2:整数型,屏幕Y坐标 参数3:字符串型,第一点16进制颜色值 参数4:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 参数5:整数型,颜色相似度(推荐0.9) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY) 注意事项:由于需要对一张图像中做大量的信息对比来匹配出屏幕范围中是否有需要的多点特征,所以这里提示必须调用开头加入KeepCapture命令,结束时ReleaseCapture释放掉。


调用范例:如果需要对一张图像做多次图色判断可以用这种调用方式拆开使用,节省资源。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'加载当前屏幕画面信息
KeepCapture
'调用多点找色命令,判断该特征是否存在区域范围中
If CmpMultiCol(10,10,"FFFFFF","1|5|FFFFFF,5|10|FFFFFF",0.9)=True Then
'说明找到
TracePrint "找到,第一个点坐标:" & IntX & "," & IntY
Else
'否则
TracePrint "没有找到"
End If
'释放上次画面加载信息,以免对干扰后面找色命令
ReleaseCapture

复制代码

函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'固定坐标多点模糊找色
Function CmpMultiCol(x,y,col,str,n)
CmpMultiCol=False
IntX=x
IntY=y
If CmpCol(x,y,col,n)=True Then
'第一个点颜色符合,调用MultiColor多点处理模块匹配其余点的颜色是否正确
CmpMultiCol=MultiColor(x,y,str,n)
Else
'第一个点颜色不符,调用FindMultiCol多点找色模块,对该点再次进行一次小范围多点找色查找
CmpMultiCol=FindMultiCol(x-3,y-3,x+3,y+3,col,str,n)
End If
End Function

复制代码

原理解析:待编辑


函数名称:FindMultiCol 函数功能:区域范围多点找色 函数参数: 参数1:整数型,屏幕左上角X坐标 参数2:整数型,屏幕左上角Y坐标 参数3:整数型,屏幕右下角X坐标 参数4:整数型,屏幕右下角Y坐标 参数5:字符串型,第一点16进制颜色值 参数6:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 参数7:整数型,颜色相似度(推荐0.9) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY) 注意事项:由于需要对一张图像中做大量的信息对比来匹配出屏幕范围中是否有需要的多点特征,所以这里提示必须调用开头加入KeepCapture命令,结束时ReleaseCapture释放掉。


调用范例:如果需要对一张图像做多次图色判断可以用这种调用方式拆开使用,节省资源。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'加载当前屏幕画面信息
KeepCapture
'调用多点找色命令,判断该特征是否存在区域范围中
If FindMultiCol(0,0,720,1280,"FFFFFF","1|5|FFFFFF,5|10|FFFFFF",0.9)=True Then
'说明找到
TracePrint "找到,第一个点坐标:" & IntX & "," & IntY
Else
'否则
TracePrint "没有找到"
End If
'释放上次画面加载信息
ReleaseCapture

复制代码

函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'区域范围多点模糊找色
Function FindMultiCol(x1,y1,x2,y2,col,str,n)
FindMultiCol=False
Dim x,y
Do
FindColor x1,y1,x2,y2,col,0,n,intX, intY
If intX >= 0 Then
If MultiColor(intX,intY,str,n)=True Then
FindMultiCol=True
Exit Do
Else
x=IntX
y=IntY
Do Until x > x2
FindColor x,y,x2,y,col,0,n,intX,intY
If intX >= 0 Then
If MultiColor(intX,intY,str,n)=True Then
FindMultiCol=True
Exit Function
Else
x=IntX+1
End If
Else
Exit Do
End If
Loop
y1=y+1
End If
Else
Exit Do
End If
Loop Until y1 > y2
End Function

复制代码

原理解析:待编辑


函数名称:MultiColor 函数功能:处理多点点阵匹配,配合多点找色函数模块使用 函数参数: 参数1:整数型,起点X坐标 参数2:整数型,起点Y坐标 参数3:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 参数4:整数型,颜色相似度(推荐0.9) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY)


函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function MultiColor(x,y,str,n)
MultiColor=False
Dim arr1,i,arr2()
arr1=Split(str,",")
For Each i In arr1
arr2=Split(i,"|")
If CmpCol(x+Int(arr2(0)),y+Int(arr2(1)),arr2(2),n)=False Then
Exit Function
End If
Next
MultiColor=True
End Function

复制代码

原理解析:待编辑


以下部分是基于以上函数模块,进行优化组合,请大家理解后根据需求使用,也可自行组合以上几个模块使用。


函数名称:Cm 函数功能:固定坐标多点找色 函数参数: 参数1:整数型,屏幕X坐标 参数2:整数型,屏幕Y坐标 参数3:字符串型,第一点16进制颜色值 参数4:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY) 函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function Cm(x,y,col,str)
Cm=CmEx(x,y,col,str,0.9)
End Function

复制代码

原理解析:待编辑


函数名称:CmEx 函数功能:固定坐标多点找色 函数参数: 参数1:整数型,屏幕X坐标 参数2:整数型,屏幕Y坐标 参数3:字符串型,第一点16进制颜色值 参数4:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 参数5:整数型,颜色相似度(推荐0.9) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY)


函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function CmEx(x,y,col,str,n)
KeepCapture
CmEx=CmpMultiCol(x,y,col,str,n)
ReleaseCapture
End Function

复制代码

原理解析:待编辑


函数名称:Fm 函数功能:区域范围多点找色 函数参数: 参数1:整数型,屏幕左上角X坐标 参数2:整数型,屏幕左上角Y坐标 参数3:整数型,屏幕右下角X坐标 参数4:整数型,屏幕右下角Y坐标 参数5:字符串型,第一点16进制颜色值 参数6:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY)


函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function Fm(x1,y1,x2,y2,col,str)
Fm=FmEx(x1,y1,x2,y2,col,str,0.9)
End Function

复制代码

原理解析:待编辑……


函数名称:FmEx 函数功能:区域范围多点找色(模糊百分比) 函数参数: 参数1:整数型,屏幕左上角X坐标 参数2:整数型,屏幕左上角Y坐标 参数3:整数型,屏幕右下角X坐标 参数4:整数型,屏幕右下角Y坐标 参数5:字符串型,第一点16进制颜色值 参数6:字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色) 参数7:整数型,颜色相似度(推荐0.9) 返回值:True 或 False(符合或不符合,坐标保存在intX与intY)


函数模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function FmEx(x1,y1,x2,y2,col,str,n)
KeepCapture
FmEx=FindMultiCol(x1,y1,x2,y2,col,str,n)
ReleaseCapture
End Function

复制代码

原理解析:待编辑……


待续…… 20140519 修正:FindMultiCol函数模块中的一个逻辑错误,解决特别情况下会进入死循环的问题。 20140530 修改:三个函数名称与新版(1.5)新增命令重名问题。

原来名称

修改名称

CmpColor

CmpCol

CmpMultiColor

CmpMultiCol

FindMultiColor

FindMultiCol

20140603 修正:CmpCol函数中坐标判断,避免多点找色偏移坐标为负数时,出现错误卡住

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-08-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
按键精灵中常用的图色操作命令
图色操作是按键精灵中最核心的功能,因为如果单纯的靠坐标与延时去编写脚本,这样的脚本会因为不同手机的性能和网络表现出不同的差异。
越陌度阡
2023/11/05
1.4K0
按键精灵-常用脚本命令汇集
//~~~~~~~~~~{[做后台的准备]}~~~~~~~~~~~ //下面,用标题名来找父窗口 Hwnd = Plugin.Window.Find(0, "无标题 - 记事本") //下面,根据父窗口来找子窗口(找对了标题名才有效) HwndEx = Plugin.Window.FindEx(Hwnd, 0, 0, 0) //下面,用程序名来找父窗口 Hwnd = Plugin.Window.Find("Notepad", 0) //下面,根据父窗口来找子窗口(找对了类名才有效) Hwnd = Plugi
阿炬
2018/05/11
2.5K0
游戏辅助丨手把手简单实现射击游戏逆向(2)
同样的,我们依旧是要找到子弹后座力的地址,子弹后座力有很多的保存形式,比如射击的次数,比如一个浮点数的大小--我的子弹扩散的半径,比如离屏幕准心的2个偏移,既然这么多形式我们该如何下手呢,这时候我们先前找到的子弹地址就排上用场了。不妨假设我们武器相关的数据都在一个对象中,那么就有可能他们在内存是一段连续的区域中。根据我们的假设我们要查看子弹地址的内存区域。点击我们的子弹地址,右键点击浏览相关内存区域,然后开几枪试试
极安御信安全研究院
2022/06/08
1.2K0
游戏辅助丨手把手简单实现射击游戏逆向(2)
按键精灵中的日志、分辨率、找色逻辑、线程
在写脚本的时候,会针使用一个固定的屏幕分辨率来编写,但是当这个脚本在其它分辨率的手机上使用时就会无法正常运行,为此就需要提前声明脚本分辨率,这样脚本在运行时就会根据当前手机屏幕分辨率与脚本编写时声明的手机分辨率进行比例缩放,相关的坐标位置也会跟着比例做位移。
越陌度阡
2023/11/17
7300
Auto.js找图找色常用功能
图片对象创建后尽量在不使用时进行回收,图片对象通过recycle函数来回收,同时避免循环创建大量图片。
越陌度阡
2022/08/20
4.7K0
🥬 🐶的uniapp学习之🦌 【提取图片主题色生成背景 】
首先,这篇文章的最终的效果不是很成功。记录一下我在这个失败过程中遇到的问题和尝试过的技术。
用户4793865
2023/01/12
2.9K0
按键精灵q语言基础教学怎么看不了_按键精灵脚本是用什么语言写
一、数据类型 1.1数据类型 可以表示一切的类型variant 逻辑类型:boolean (true,false) 数学类型: 整数:byte(0-255),integer(-32768-32767),long(-21亿-21亿) 小数:single,double,currency(货币类型,包含4位小数,-922337203685477.5808-922337203685477.5807) 文字类型:string 时间类型:Date(Time) 其他类型:null(空)empty(已撤销或未初始化)object(任何对象)
全栈程序员站长
2022/09/16
1.1K0
史上最详细版 头文件biso.h,graphics.h,libbgi.a
BIOS.h是C语言里的一些头文件,包含了很多通用的函数和端口的定义,是为了让你在编写程序的时候方便调用的,在编译的时候会参与编译。
C you again 的博客
2020/09/15
1.6K0
219个opencv常用函数汇总
11、cvSetCaptureProperty:设置CvCapture对象的各种属性;
小白学视觉
2021/05/07
3.6K0
219个opencv常用函数汇总
基于粒子滤波的物体跟踪
一直都觉得粒子滤波是个挺牛的东西,每次试图看文献都被复杂的数学符号搞得看不下去。一个偶然的机会发现了Rob Hess(http://web.engr.oregonstate.edu/~hess/)实现的这个粒子滤波。从代码入手,一下子就明白了粒子滤波的原理。根据维基百科上对粒子滤波的介绍(http://en.wikipedia.org/wiki/Particle_filter),粒子滤波其实有很多变种,Rob Hess实现的这种应该是最基本的一种,Sampling Importance Resampling (SIR),根据重要性重采样。下面是我对粒子滤波实现物体跟踪的算法原理的粗浅理解:
MachineLP
2022/05/09
6770
基于粒子滤波的物体跟踪
R语言入门系列之二
在进行正式的数据分析之前,通常要对数据进行处理。而读取数据仅仅是最简单的,之后还要进行数据的筛选、排序、转换等。数据框是最方便的数据存储、管理对象。R有很多内置的示例数据集包括向量、矩阵数据框等,可以使用data()进行查看,接下来我们以R内置数据mtcars(32辆汽车在11个指标上的数据)为例进行分析,如下所示:
SYSU星空
2022/05/05
4.1K0
R语言入门系列之二
Linux驱动开发: FrameBuffe(LCD)驱动开发
帧缓冲(framebuffer)是Linux 系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。用户不必关心物理显示缓冲区的具体位置及存放方式,这些都由帧缓冲设备驱动本身来完成。
DS小龙哥
2022/01/12
49.6K0
Linux驱动开发: FrameBuffe(LCD)驱动开发
Seurat标准流程
前面介绍了自己利用cellranger count的结果进行seurat分析,但是整合数据方面做得还是不如原作者优秀,虽然我们不知道他们是如何处理的,但还是可以继续向下进行,而且这一次将会使用他们合并好的数据
生信技能树jimmy
2020/03/30
2.8K0
M5ATOMS3基础01按键
注意: 1.如果您不想使用M5.begin() 初始化LCD,请在使用显示器之前调用此功能
zhangrelay
2023/07/27
5390
M5ATOMS3基础01按键
Python Matplotlib库:统计图补充
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的博客 🍊个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 🥭本文内容:Python Matplotlib库:统计图补充 ---- Python Matplotlib库:统计图补充 1.引言 2.直方图 3.箱线图 4.误差条图 5.小提琴图 6.尖峰栅格图 7.二维直方图/散点密度图 8.Hexbin散点图 9.扇形图 ---- 1.引言 上两期我们讲了 Matplotlib 库
小嗷犬
2022/11/15
2K0
Python Matplotlib库:统计图补充
python matplotlib各种绘图类型完整总结
plot([x], y, [fmt], [x2], y2, [fmt2], …, **kwargs)
Twcat_tree
2022/12/05
6.1K0
python matplotlib各种绘图类型完整总结
Android关于Color你所知道的和不知道的一切
零、前言 1.做安卓的大多应该对颜色不太敏感,毕竟咱是敲代码的,颜色有设计师呢。 2.不过作为一名在大学被颜色熏(陶)过四年的人,对颜色多少还是挺亲切的(虽然当时挺讨厌的) 3.纪念也好,记录也罢,为它写篇总结也理所应当 4.如果你觉得并不需要了解关于颜色的知识,那你可以将本文当做一篇科普文(出去跟人家吹吹牛还是够用的) ---- 一、颜色知识科普: 这一切都要从光开始: 有个叫牛顿的人拿一块三棱镜将太阳光折射出了彩色产生色散现象: ----色散现象说明光在介质中的速度v=c/n(或折射率n)随
张风捷特烈
2018/12/11
2.8K0
Android关于Color你所知道的和不知道的一切
超全!40000字 Matplotlib 实战
Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。
公众号机器学习与AI生成创作
2020/09/22
8K0
超全!40000字 Matplotlib 实战
Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标
了解用于编辑电子表格、下载文件和启动程序的各种 Python 模块是很有用的,但有时您需要使用的应用没有任何模块。在计算机上实现任务自动化的终极工具是你编写的直接控制键盘和鼠标的程序。这些程序可以通过发送虚拟击键和鼠标点击来控制其他应用,就像你坐在电脑前亲自与应用进行交互一样。
ApacheCN_飞龙
2023/04/04
9K0
Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标
Matplotlib 笔记
linestyle: 设置线型,常见取值有实线(’-’)、虚线(’–’)、点虚线(’-.’)、点线(’:’)
杨丝儿
2022/02/18
4.7K0
Matplotlib 笔记
相关推荐
按键精灵中常用的图色操作命令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验