美文网首页
古剑识别灵力资源条

古剑识别灵力资源条

作者: 烟流 | 来源:发表于2018-10-21 22:52 被阅读0次

背景

项目开源在这:https://github.com/1178615156/gjqt-script
代码在这:https://github.com/1178615156/gjqt-script/blob/master/gjsp/skill/sm/sm_lin_li.py
代码里假设资源条放在个位置 area_ling_li = (444, 898, 750, 913) ,如果不在这里需要自行修改

目标

识别出当前灵力数

实现

0. 截图然后将灵力条裁剪出来
ling-li-34.jpg
1. import 各种各样的包
from PIL import Image
import numpy as np
import os
from functional import seq
import matplotlib.pyplot as plt 
from scipy.optimize import leastsq


img = Image.open(...)
2. 简单观察下会发现灵力条基本是绿色的,除了背景和文字,所以先想办法把绿色的部分提取出来,
def pretreatment(img):
    r,g,b = img.split()
    b = np.array(b)
    b = b > 190 
    b = b * 255
    return b 

来看看效果:

Image.fromarray(pretreatment(img).astype("uint8"))
image.png

看成功的识别出蓝色区域和非蓝色区域

3. 计算蓝色区域的面积占整个资源条的面积之比
def area_size(img):
    x = pretreatment(img)
    return np.count_nonzero(x) / x.size

print(area_size(img))

结果:
0.1328976034858388
和我们期望的真实的结果18有点差距

仔细观察就会发现蓝色区域的面积是正比于当前的资源量的;
假设:
资源量 = a * 蓝色区域面积 + b
想办法计算出ab即可

优化

首先准备好一批数据image_list

image.png

准备好image_ximage_y

image_list = [image...]
image_y = np.array([100,14,18,....])
image_x = np.array(image_list.map(area_size).to_list(),dtype="float")

然后来个最小二乘法就可以得到ab了,

def error(p,x,y):
    a,b=p
    return  (b*x+b) -y
p0=(1,20)

leastsq(error,p0,args=(image_x,image_y))
print(p0)

得到的ab 就可以直接用啦

def pred(img):
    return 115.31076412 * area_size(img) + 2.00410678
测试
fig=plt.figure()

for index,img in enumerate(image_test):
    fig.add_subplot(len(list(image_test)),1,index+1).title.set_text(str(pred(img)))
    plt.imshow(img)
plt.show()
image.png

相关文章

  • 古剑识别灵力资源条

    背景 项目开源在这:https://github.com/1178615156/gjqt-script代码在这:h...

  • 青白调 第15篇 插剑

    “起。”随着一心一声大吼,那柄古剑又被他拔起一尺有余。此时,一心火力全开,将全身灵力全部释放,在灵力的作用之下,他...

  • 白泽新记 第一百一十一章:砍头

    蓝白色光尽数被收,陶曦灵力全无。 “灵力,我的灵力!!!”陶曦弃剑跌坐在地,绝望地吼道。 其实,陶曦虽然没了灵力,...

  • 【连载】梦剑 4 四望眼欲穿5

    5红颜渐逝,桃粉茶淡 没有了灵力支撑,熔池将要冷却,山洞承受不了灵力激荡开始震动,苏抱着桃儿,五人御剑急忙返回。苏...

  • 影视同人语C旅长「必看」

    【影视圈古剑分部旅长】不可选:编号:影视师区部「第1旅古剑圈」旅长,主持古剑奇谭同人语C各大小事物,古剑部最高领导...

  • 《凡人修仙传》伴读笔记(作者忘语)1085

    施展青蟠剑阵,又斩出了两条法则之线,韩立体内的灵力也消耗很大。 马良看准时机,直接吹响了腰间一根神秘的笛子。 笛音...

  • 古剑

    灯下观古剑 古剑犹气寒 世间纷纭尔 重叙英雄长

  • 古剑

    高桥与终于等到了今天。虽然还是夏天的样子,但他发现了夕阳烧的比昨天更厉害了,风有点站起来了,天长高了。最重要的是他...

  • 古剑

    玩过游戏古剑奇谭,有很多很有趣的体会,不扯了,直接说了。 贴吧有个人对游戏评价我觉得很对,具体忘记了,大概是兄弟之...

  • 古剑

    七绝 古剑 文/风铃(四川) 岩铁千锤百炼钢 一身正气凛寒光 锄除天下妖魔事 游侠豪情美范彰

网友评论

      本文标题:古剑识别灵力资源条

      本文链接:https://www.haomeiwen.com/subject/habizftx.html