昨天做完扫雷后,思考了一下游戏程序设计的课程设计应该做什么。虽然老师的要求是做棋牌游戏,可是我感觉做卡牌游戏也不是不可以,说不定斗地主的玩法配上欧美魔幻画风也能成为一款卡牌大作呢。想到做自己常玩的卡牌游戏杀戮尖塔,月圆之夜,昆特牌,好像也就那么几个,想来想去觉得月圆之夜的游戏素材更好提取一些,直接手机上截图然后抠图就行了(因为我没有pc上的存档)

可以看到在图鉴出点开每张卡片,它们的位置都是固定的,所以我们就点开每张图片,然后截图,发到电脑上,然后再截取卡牌的区域,没错就是这么简单粗暴

于是下面这个脚本便诞生了

import cv2
import os
import numpy as np

fileList=os.listdir("imgs2")
i=0
for file in fileList:
    im1 = cv2.imread("imgs2/"+file)
    im2 = im1[420:1185, 286:786]
    x, y = im2.shape[0:2]
    im3 = cv2.resize(im2, (int(y / 2.5), int(x / 2.5 / 306 * 300)))
    cv2.imwrite("output2/"+"card"+str(i)+".png",im3)
    i+=1

简述之就是遍历文件夹里的文件(都是图片),然后截取范围,然后再缩放(因为素材的大小要适合而且宽高最好是整数),最后再输出

看看原始目录下的文件

输出目录的文件

这样我们就可以方便的使用了

Last modification:July 12th, 2020 at 01:05 am