python3使用imshow函数出现错误TypeError: Expected cv::UMat for argument 'mat'怎么改?

def show(self, frame):
cv2.imshow(self._windowName, frame)

是什么原因呢?感觉imshow要的两个参数都有了,网上好像很少人遇到这个问题,没有搜到可解决的方案

1个回答

cv2.imshow(img) img为你使用img = cv2.imread()读取进入程序的图片
cv2.imshow(img)语句以后要接一句cv2.waitkey(0),不然展示的图片会一闪而过。参数0表示一直等待

qq872890060
繁华三千东流水 回复weixin_45294139: 那要看你的frame是什么类型了,imshow()需要imread来的对象啊
5 个月之前 回复
weixin_45294139
豆豆嘟嘟 好的,谢谢您!还想追问一下,为什么这个的错误提示是类型错误呢?如果没有加waitkey会一闪而过说明代码可用?
5 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
为什么python绘图时imshow函数和plot画出的子图大小不一致?请大神们指教
fig = plt.figure(figsize=(2.5, 3.53557), dpi=180) ax1 = fig.add_subplot(711) norma = mpl.colors.Normalize(vmin=0, vmax=40) map = ax1.imshow(data112, interpolation='nearest', cmap=cmap, as pect='auto', norm=norma, origin='lower') font2 = {'family': 'Times New Roman', 'weight': 'normal', 'size': 30} plt.xlabel('Electron low energy range(1~22MeV)', font2, fontsize=4, labelpad=0.5) plt.ylabel('Pitch Angle(deg.)', font2, fontsize=3, labelpad=0.1) plt.xlim(0, 262) plt.ylim(0, 9) cb = fig.colorbar(mappable=map, cax=None, ax=ax1, pad=0.01, aspect=2, shrink=1.0, norm=norm, ticks=[0, 10, 20, 30]) cb.set_label('$Counts(cm^-2s^-1Str^-1)$', size=2) cb.ax.tick_params(labelsize=4, direction='in', right='True') ax7 = fig.add_subplot(717) ax7.plot(np.arange(0, len(Electron_counts)), Electron_counts, color='b', label='e', linewidth=0.4) ax7.plot(np.arange(0, len(Proton_counts)), Proton_counts, color='r', label='p', linewidth=0.4) plt.legend(bbox_to_anchor=(1.01, 0.5), loc=6, borderaxespad=0, fontsize=4) font2 = {'family': 'Times New Roman', 'weight': 'normal', 'size': 30} plt.xlabel('Electron low energy range(1~22MeV)', font2, fontsize=2, labelpad=0.5) plt.xlim(0, 262) plt.ylim(0, 340) plt.ylabel('$Counts(cm^-2s^-1Str^-1)$', font2, fontsize=2, labelpad=0.5) plt.yticks([0, 100, 200, 300], ['0', '100', '200', '300']) plt.show() ![图片说明](https://img-ask.csdn.net/upload/201908/17/1566030580_217227.png) ``` ```
python使用opencv中的imshow时出错,无法显示图片
python使用opencv中imshow语句时报错,窗口就是灰色的没有图片,错误提示cv2.error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:352: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow' 求大神帮忙解决 下面是代码 import cv2 #加载图片 image=cv2.imread('‪SS09001.JPG') #建立一个窗口 cv2.namedWindow('image') #展示 cv2.imshow('image',image) cv2.waitKey()
Python OpenCV Canny错误待解
买了一本OpenCV的书,在使用Canny进行边缘检测的时候出现了声明错误 代码片段如下: ``` import cv2 import matplotlib.pyplot as plt o=cv2.imread("lena.bmp", cv2.IMREAD_GRAYSCALE) r1 = cv2.Canny(o,128,200) cv2.imshow("result1",r1) cv2.waitKey() cv2.destroyAllWindows() ``` 书上是这么写的,但是我用起来就会报错,报错内容如下: ``` Exception has occurred: error OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:352: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow' File "F:\learn_python\Models\test.py", line 6, in <module> cv2.imshow("result1",r1) ``` 其中```cv2.imshow```里面的双引号和单引号都试过,报同样的错误。
python3调用别人的opencv图片匹配程序报错
小白,调用别人python算法进行图片匹配报错。 代码: import cv2 from matplotlib import pyplot as plt import numpy as np import os import math def getMatchNum(matches,ratio): '''返回特征点匹配数量和匹配掩码''' matchesMask=[[0,0] for i in range(len(matches))] matchNum=0 for i,(m,n) in enumerate(matches): if m.distance<ratio*n.distance: #将距离比率小于ratio的匹配点删选出来 matchesMask[i]=[1,0] matchNum+=1 return (matchNum,matchesMask) path='D:/code/' queryPath=path+'yangben/' #图库路径 samplePath=path+'yuanjian/image1.jpg' #样本图片 comparisonImageList=[] #记录比较结果 #创建SIFT特征提取器 sift = cv2.xfeatures2d.SIFT_create() #创建FLANN匹配对象 FLANN_INDEX_KDTREE=0 indexParams=dict(algorithm=FLANN_INDEX_KDTREE,trees=5) searchParams=dict(checks=50) flann=cv2.FlannBasedMatcher(indexParams,searchParams) sampleImage=cv2.imread(samplePath,0) kp1, des1 = sift.detectAndCompute(sampleImage, None) #提取样本图片的特征 for parent,dirnames,filenames in os.walk(queryPath): for p in filenames: p=queryPath+p queryImage=cv2.imread(p,0) kp2, des2 = sift.detectAndCompute(queryImage, None) #提取比对图片的特征 matches=flann.knnMatch(des1,des2,k=2) #匹配特征点,为了删选匹配点,指定k为2,这样对样本图的每个特征点,返回两个匹配 (matchNum,matchesMask)=getMatchNum(matches,0.9) #通过比率条件,计算出匹配程度 matchRatio=matchNum*100/len(matches) drawParams=dict(matchColor=(0,255,0), singlePointColor=(255,0,0), matchesMask=matchesMask, flags=0) comparisonImage=cv2.drawMatchesKnn(sampleImage,kp1,queryImage,kp2,matches,None,**drawParams) comparisonImageList.append((comparisonImage,matchRatio)) #记录下结果 comparisonImageList.sort(key=lambda x:x[1],reverse=True) #按照匹配度排序 count=len(comparisonImageList) column=4 row=math.ceil(count/column) #绘图显示 figure,ax=plt.subplots(row,column) for index,(image,ratio) in enumerate(comparisonImageList): ax[int(index/column)][index%column].set_title('Similiarity %.2f%%' % ratio) ax[int(index/column)][index%column].imshow(image) plt.show() 报错信息: Traceback (most recent call last): File "sift7.py", line 55, in <module> ax[int(index/column)][index%column].set_title('Similiarity %.2f%%' % ratio) TypeError: 'AxesSubplot' object does not support indexing 求大神指点。
python列表索引超出范围如何处理?
# 大佬们这个显示“list index out of range”(中文:列表索引超出范围) #怎么解决? ``` import cv2 recognizer = cv2.face.LBPHFaceRecognizer_create() recognizer.read("C:\work\AI\AI-picture\Face recognition\\face_trainer\\trainer.yml") cascadePath = "C:\work\AI\AI-picture\Face recognition\haarcascade_frontalface_default.xml" faceCascade = cv2.CascadeClassifier(cascadePath) font = cv2.FONT_HERSHEY_SIMPLEX idnum = 0 names = ['A', 'Bob'] cam = cv2.VideoCapture(0, cv2.CAP_DSHOW) minW = 0.1*cam.get(3) minH = 0.1*cam.get(4) while True: ret, img = cam.read() gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = faceCascade.detectMultiScale( gray, scaleFactor=1.2, minNeighbors=5, minSize=(int(minW), int(minH)) ) for (x, y, w, h) in faces: cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2) idnum, confidence = recognizer.predict(gray[y:y+h, x:x+w]) if confidence < 100: idnum = names[idnum]#问题出在这儿 confidence = "{0}%".format(round(100 - confidence)) else: idnum = "unknown" confidence = "{0}%".format(round(100 - confidence)) cv2.putText(img, str(idnum), (x+5, y-5), font, 1, (0, 0, 255), 1) cv2.putText(img, str(confidence), (x+5, y+h-5), font, 1, (0, 0, 0), 1) cv2.imshow('camera', img) k = cv2.waitKey(10) if k == 27: break cam.release() cv2.destroyAllWindows() ```
python-opencv中imshow总报错的问题
我用的是visual studio2017,自带安装的Anaconda2,pip安装的opencv-python,在我调用imshow函数的时候总是报错 cv2.error Message=C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:331: error: (-215) size.width>0 && size.height>0 in function cv::imshow StackTrace: <module> 中的 C:\Users\Administrator\source\repos\PythonApplication1\PythonApplication1\PythonApplication1.py:4 ![图片说明](https://img-ask.csdn.net/upload/201803/13/1520901830_939155.png) ![图片说明](https://img-ask.csdn.net/upload/201803/13/1520901843_820072.png) 求大佬帮忙解答下
VS配置opencv3.4后调用imshow()函数报错
错误 LNK2019 无法解析的外部符号 "void __cdecl cv::imshow(class cv::String const &,class cv::debug_build_guard::_InputArray const &)" (?imshow@cv@@YAXAEBVString@1@AEBV_InputArray@debug_build_guard@1@@Z),该符号在函数 main 中被引用 OpencvProj E:\OPENCV\OpencvProj\OpencvProj\inhibit.obj 1 下面是我的配置 ![图片说明](https://img-ask.csdn.net/upload/201803/15/1521097027_197368.png) ![图片说明](https://img-ask.csdn.net/upload/201803/15/1521097066_6602.png) ![图片说明](https://img-ask.csdn.net/upload/201803/15/1521097089_82269.png) 代码及注释imshow()后运行结果 ![图片说明](https://img-ask.csdn.net/upload/201803/15/1521097509_881919.png) ![图片说明](https://img-ask.csdn.net/upload/201803/15/1521097525_489650.png)
opencv3使用addWeight函数出现错误
下面是我的代码 错误显示为: 0x00007FFD8EC79E08 处(位于 ConsoleApplication7.exe 中)引发的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000008EA356EEB0 处。 经过设置断点已经确定是addWeight处出现的问题了。 ``` #include<opencv2/core/core.hpp> #include<opencv2\highgui\highgui.hpp> using namespace cv; int main() { Mat girl = imread("girl.jpg"); namedWindow("1.动漫图"); imshow("1.动漫图", girl); Mat image = imread("dota.jpg", 1); Mat logo = imread("dota_logo.jpg"); namedWindow("2.Yuanhua"); imshow("2.Yuanhua", image); namedWindow("3.Yuanhua"); imshow("3.Yuanhua", logo); Mat imageROI; imageROI = image(Rect(800,350,logo.cols,logo.rows)); addWeighted(imageROI, 0.5,logo,0.3,0.,imageROI); namedWindow("4.Yuanhua+logo"); imshow("4.Yuanhua+logo", image); imwrite("生成得.jpg", image); waitKey(); return 0; } ```
pytorch 中 写入class ConvNet(nn.Module): 语句之后 出现错误NameError: name 'ConvNet' is not defined 这是怎么回事?
```import torch import torch.nn as nn from torch.autograd import Variable import torch.optim as optim import torch.nn.functional as F import torchvision.datasets as dsets import torchvision.transforms as transforms import matplotlib.pyplot as plt import numpy as np #%matplotlib inline image_size=28 num_classes=10 num_epochs=20 batch_size=64 train_dataset=dsets.MNIST(root='./data', train=True, transform=transforms.ToTensor(), download=True) test_dataset=dsets.MNIST(root='./data', train=False, transform=transforms.ToTensor()) train_loader=torch.utils.data.DataLoader(dataset=train_dataset, batch_size=batch_size, shuffle=True) indices=range(len(test_dataset)) indices_val=indices[:5000] indices_test=indices[5000:] sampler_val=torch.utils.data.sampler.SubsetRandomSampler(indices_val) sampler_test=torch.utils.data.sampler.SubsetRandomSampler(indices_test) validation_loader=torch.utils.data.DataLoader(dataset=test_dataset, batch_size=batch_size, shuffle=False, sampler=sampler_val ) test_loader=torch.utils.data.DataLoader(dataset=test_dataset, batch_size=batch_size, shuffle=False, sampler=sampler_test ) idx=110 #随机选取的 muteimg=train_dataset[idx][0].numpy() plt.imshow(muteimg[0,...]) plt.show() print('标签是:',train_dataset[idx][1]) depth=[4,8] class ConvNet(nn.Module): def __init__(self): super(ConvNet,self).__init__() self.conv1=nn.Conv2d(1,4,5,padding=2) self.pool=nn.MaxPool2d(2,2) self.conv2=nn.Conv2d(depth[0],depth[1],5,padding=2) self.fc1=nn.Linear(image_size//4*image_size//4*depth[1],512) self.fc2=nn.Linear(512,num_classes) def forward(self, x): x=self.conv1(x) x=F.relu(x) x=self.pool(x) x=self.conv2(x) x=F.relu(x) x=self.pool(x) x=x.view(-1,image_size//4*image_size//4*depth[1]) x=F.relu(self.fc1(x)) x=F.dropout(x,training=self.training) x=self.fc2(x) x=F.log_softmax(x,dim=1) return x def retrieve_features(self,x): feature_map1=F.relu(self.conv1(x)) x=self.pool(feature_map1) feature_map2=F.relu(self.conv2(x)) return (feature_map1,feature_map2) net=ConvNet() criterion=nn.CrossEntropyLoss() optimizer=optim.SGD(net.parameters(),lr=0.001,momentum=0.9) record=[] weights=[] for epoch in range(num_epochs): train_rights=[] for batch_idx,(data,target) in enumerate (train_loader): data,target=Variable(data),Variable(target) net.train() output=net(data) loss=criterion(output,target) optimizer.zero_grad() optimizer.step() right=rightness(output,target) train_rights.append(right) if batch_idx % 100 ==0: net.eval() val_rights=[] for(data,target) in validation_loader: data,target=Variable(data),Variable(target) output=net(data) right=rightness(output,target) val_rights.append(right) train_r=(sum([tup[o] for tup in train_rights]),sum([tup[1] for tup in train_rights])) val_r=(sum([tup[0] for tup in val_rights]),sum([tup[1] for tup in val_rights])) record.append((100 - 100.*train_r[0]/train_r[1],100-100.*val_r[0]/val_r[1])) weights.append([net.conv1.weight.data.clone(),net.conv1.bias.data.clone(), net.conv2.weight.data.clone(),net.conv2.bias.data.clone()]) net.eval() vals=[] for dara,target in test_loader: data,targrt=Variable(data,volatile=True),Variable(target) output = net(data) val=rightness(output,target) vals.append(val) rights=(sum([tup[0] for tup in vals]),sum([tup[1] for tup in vals])) rights_rate=1.0*rights[0]/rights[1] right_rate plt.figure(figsize=(10,7)) plt.plot(record) plt.xlabel('Steps') plt.ylabel('Error rate') ``` ```pytorch 中 写入class ConvNet(nn.Module): 语句之后 出现错误NameError: name 'ConvNet' is not defined 这是怎么回事
关于opencv回调函数形参的问题
``` #include<iostream> #include<opencv2/opencv.hpp> #include<stdlib.h> using namespace cv; using namespace std; // 定义全局变量 cv::Mat img_Original; cv::Mat img_Ranged; cv::Mat img_Median; // 定义回调函数 void on_low_height_thresh_trackbar(int, void*); void on_high_height_thresh_trackbar(int, void*); int low_height = 50, high_height = 85; int main() { img_Original = cv::imread("ROI1.jpg", 0); cv::medianBlur(img_Original, img_Median, 5); // 创建窗口 cv::namedWindow("original image"); cv::namedWindow("selected image"); // 创建回调函数进度条 cv::createTrackbar("Low height", "selected image", &low_height, 255, on_low_height_thresh_trackbar); cv::createTrackbar("High height", "selected image", &high_height, 255, on_high_height_thresh_trackbar); // 显示图像 cv::imshow("original image", img_Original); on_low_height_thresh_trackbar(low_height, 0); on_high_height_thresh_trackbar(high_height, 0); cv::waitKey(0); return 0; } // 定义回调函数 void on_low_height_thresh_trackbar(int, void*) { low_height = cv::min(high_height - 1, low_height); cv::setTrackbarPos("Low height", "selected image", low_height); // 选取阈值 cv::inRange(img_Median, low_height, high_height, img_Ranged); // 显示图像 cv::imshow("selected image", img_Ranged); } void on_high_height_thresh_trackbar(int, void*) { high_height = cv::max(high_height, low_height + 1); cv::setTrackbarPos("High height", "selected image", high_height); // 选取阈值 cv::inRange(img_Median, low_height, high_height, img_Ranged); // 显示图像 cv::imshow("selected image", img_Ranged); } ``` void on_low_height_thresh_trackbar(int, void*) void on_high_height_thresh_trackbar(int, void*) 在这两个函数中int,void*这两个形参都没有出现,那么设置这两个形参是为什么呢?
malloc(): memory corruption (fast): C++ opencv编写出错
好象是亮度调整那里出错了,可是不知道怎么改 ``` int main(){ Mat re_src_image; Mat src_image = imread("/home/zn/桌面/13740146-f01b848b12b93174.png",1); if(! src_image.data){ cout << "Couldn't find the image!\n"; return false; } else { resize(src_image, re_src_image, Size(640, 480)); vector<Mat> channels; split(re_src_image, channels); re_src_image = channels.at(2); } //亮度调整 int ContrastValue = 100; int BrightValue = 0; Mat light_image = Mat::zeros(re_src_image.size(), re_src_image.type()); for (int y = 0; y < re_src_image.rows; y++) { for (int x = 0; x < re_src_image.cols; x++) { for (int c = 0; c < 3; c++){ light_image.at<Vec3b>(y, x)[c] = (ContrastValue*0.01)*(re_src_image.at<Vec3b>(y, x)[c]) + BrightValue; } } } imshow("a",re_src_image); while(1){ if(waitKey(0)==27) break; } return 0; } ```
python调用cv2.findContours时报错:ValueError: not enough values to unpack (expected 3, got 2)
完整代码如下: ``` import cv2 import numpy as np img = np.zeros((200, 200), dtype=np.uint8) img[50:150, 50:150] = 255 ret, thresh = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY) image, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) color = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) img = cv2.drawContours(color, contours, -1, (0,255,0), 2) cv2.imshow("contours", color) cv2.waitKey() cv2.destroyAllWindows() ``` 但是cv2.findContours报如下错误: ValueError: not enough values to unpack (expected 3, got 2) python版本为3.6,opencv为4.0.0
小白,想用Python3.7+Opencv4.1.1+APP:IP摄像头,调用手机的摄像头。 结果出现如下状况,还请各位大佬指点!
小白,想用Python3.7+Opencv4.1.1+APP:IP摄像头,调用手机的摄像头。 结果出现如下状况,还请各位大佬指点! ``` import cv2 url = 'http://192.168.0.101:8081/' cap = cv2.VideoCapture(url) while (1): ret, frame = cap.read() cv2.imshow('', cap.read()) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows() ``` 我修改了一下,代码成这样了 ``` import cv2 url = 'http://192.168.0.101:8081' cap = cv2.VideoCapture(url) while cap.isOpened(): ret, frame = cap.read() cv2.imshow('frame', frame) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows() ``` 运行并没有反应,我感觉直接没有进while,也就是说摄像头根本没数据流,请问各位大佬怎么改呢?
Python与opencv新手,做毕设看一位大神源码,但自己执行时候有如下错误,请问怎么解决?
代码如下: if __name__ == '__main__': im = array(Image.open('G:/graduation project/picture/车牌.jpg')) ret, binary = cv2.threshold(im, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) img = cv2Thin(im, 3) im2, cdf = histeq(im) cv2.imshow('细化图像', img) plt.imshow(im2, cmap=cm.gray) show() # 定义在pylab中 报错: C:\Python27\python.exe "G:/graduation project/Python-opencv/imtools.py" Traceback (most recent call last): File "G:/graduation project/Python-opencv/imtools.py", line 387, in <module> ret, binary = cv2.threshold(im, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) TypeError: src data type = 17 is not supported
为什么这个代码我运行不了,其他人都能运行。是格式错误吗?
``` import cv2 import numpy as np a=cv2.imread("C:\\Users\\25644\\Desktop\\新建文件夹\\cb.jpg") b=a # add1= a + b add2=cv2.add(a,b) # cv2.imshow('add1',add1) cv2.imshow('add2',add2) cv2.imshow('a',a) cv2.waitKey() cv2.destroyAllWindows() # a=cv2.imread("C:\\Users\\25644\\Desktop\\cb3.png") # b=cv2.imread("C:\\Users\\25644\\Desktop\\cb1.jpg") # c=cv2.imread("C:\\Users\\25644\\Desktop\\cb2.jpg") # d=cv2.imread("C:\\Users\\25644\\Desktop\\cb.jpg") # result1=cv2.addWeighted(a,1,b,1,0) # result2=cv2.addWeighted(c,1,d,1,0) # cv2.imshow('beta',a) # cv2.imshow('betb',b) # cv2.imshow('betc',c) # cv2.imshow('betd',d) # cv2.imshow('result1',result1) # cv2.imshow('result2',result2) # cv2.waitKey() # cv2.destroyAllWindows() # a=cv2.imread("C:\\Users\\25644\\Desktop\\cb1.jpg",cv2.IMREAD_UNCHANGED) # b=cv2.cvtColor(a,cv2.COLOR_BGR2GRAY) # c=cv2.cvtColor(a,cv2.COLOR_BGR2RGB) # # d=cv2.cvtColor(a,cv2.COLOR_GRAY2RGB) # cv2.imshow('a',a) # cv2.imshow('b',b) # cv2.imshow('c',c) # # cv2.imshow('d',d) # db,dg,dr=cv2.split(a) # cv2.imshow('db',db) # cv2.imshow('dg',dg) # cv2.imshow('dr',dr) # m1=cv2.merge([dr,dg,db]) # cv2.imshow('m1',m1) # print("灰度图像b通道:",b.shape) # # print("转换后彩色图像d通道:",d.shape) # cv2.waitKey() # cv2.destroyAllWindows() ``` 假设这里面的图片路径全都正确,那为什么不能运行。 ![图片说明](https://img-ask.csdn.net/upload/201912/12/1576115808_602877.png)
Unrecognized or unsupported array type in function 'cvGetMat'问题
``` import numpy as np import cv2 img = cv2.imread('messi_2.jpg') mask = cv2.imread('mask2.png',0) dst = cv2.inpaint(img,mask,3,cv2.INPAINT_TELEA) cv2.imshow('dst',dst) cv2.waitKey(0) cv2.destroyAllWindows() ``` (base) C:\Users\lenovo>D:/anaconda/python.exe e:/Desktop/test/test.py Traceback (most recent call last): File "e:/Desktop/test/test.py", line 7, in <module> dst = cv2.inpaint(img,mask,3,cv2.INPAINT_TELEA) cv2.error: OpenCV(3.4.3) C:\projects\opencv-python\opencv\modules\core\src\array.cpp:2492: error: (-206:Bad flag (parameter or structure field)) Unrecognized or unsupported array type in function 'cvGetMat' 最终结果这样,哪里错了啊
python调用一个函数里返回的变量不成功
我要写一个监控LOL击杀记录的功能,但是代码有问题,虽然可以监控到击杀记录,但是不能将监控的结果输出出来。 ``` import win32gui import win32api import win32con from win32gui import * import time from PIL import Image from PIL import ImageGrab import imagehash import pymouse,pykeyboard,os,sys from pymouse import * from pykeyboard import PyKeyboard import schedule import cv2 import numpy as np import matplotlib.pyplot as plt from threading import Thread,Lock m = PyMouse() k = PyKeyboard() titles = set() lock=Lock() i=0 reward = 0 #获取电脑上的窗口句柄 def foo(hwnd,mouse): if IsWindow(hwnd) and IsWindowEnabled(hwnd) and IsWindowVisible(hwnd): titles.add(GetWindowText(hwnd)) def playGame(): """Click the game icon in the simulator to enter and displays to the specified location""" EnumWindows(foo, 0) list = [] for title in titles: if title: list.append(title) for title in list: a = 'League of Legends (TM) Client' if title.find(a) != -1: hwnd = win32gui.FindWindow(0,a) win32gui.SetWindowPos(hwnd, win32con.HWND_TOP,0,0,1282,790,win32con.SWP_SHOWWINDOW) hwnd = win32gui.FindWindow(0,a) size = win32gui.GetWindowRect(hwnd) #print(size) # 在模拟器点击游戏图标进入游戏 #win32api.SetCursorPos([size[0] + 410, size[1] + 186]) #win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0) #win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0) #time.sleep(10) return size def jianc(): """Click to implement in the game""" # 点击我知道 reward = 0 size = playGame() #time.sleep(15) #print(size) topx, topy = size[0], size[1] #print(topx) #print(topy) ImageGrab.grab((topx + 496, topy + 125, topx + 787, topy + 155)).save(r'C:\Users\Administrator\Desktop\game\model/cheshi'+str(i)+'.jpg','JPEG') pic = np.array(Image.open(r'C:\Users\Administrator\Desktop\game\model/cheshi'+str(i)+'.jpg')) N = 125 for a in range(pic.shape[0]): for j in range(pic.shape[1]): if (pic[a][j][0] > N)&(pic[a][j][1] > N)&(pic[a][j][2] > N): pic.itemset((a,j,0),255) pic.itemset((a,j,1),255) pic.itemset((a,j,2),255) else: pic.itemset((a,j,0),0) pic.itemset((a,j,1),0) pic.itemset((a,j,2),0) #plt.imshow(pic) plt.axis('off') cv2.imencode('.jpg', pic)[1].tofile(r'C:\Users\Administrator\Desktop\game\model\检测/cheshi'+str(i)+'.jpg') #cv2.imwrite(r'C:\Users\Administrator\Desktop\game\model/检测/cheshi'+str(i)+'.jpg',pic) #plt.savefig("result.jpg") #plt.show() #im.save(r'C:\Users\Administrator\Desktop\123/'+str(c)+'.jpg','JPEG') #设置保存路径和图片格式 hash_size = 6 hash1 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\model/检测/cheshi'+str(i)+'.jpg'), hash_size=hash_size) hash2 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\击杀了一名.png'), hash_size=hash_size) hash3 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\你已经被击杀.png'), hash_size=hash_size) hash4 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\摧毁防御塔.png'), hash_size=hash_size) hash5 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\双杀.png'), hash_size=hash_size) hash6 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\三杀.png'), hash_size=hash_size) a = (1 - (hash1 - hash2) / len(hash1.hash) ** 2) a1 = (1 - (hash1 - hash3) / len(hash1.hash) ** 2) a2 = (1 - (hash1 - hash4) / len(hash1.hash) ** 2) a3 = (1 - (hash1 - hash5) / len(hash1.hash) ** 2) a4 = (1 - (hash1 - hash6) / len(hash1.hash) ** 2) #print("你被击杀了",a1) if a > 0.76 and a<0.83: reward=1 print("你击杀了",reward,"人!!!") #win32api.SetCursorPos([topx + 290, topy + 310]) #win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0) #win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0) elif a1>0.84: reward=-1 print("你被击杀了",reward,"人!!!") return reward elif a2>0.9: reward=1 print("你摧毁了防御塔",reward,"人!!!") elif a3>1: reward=2 print("你双杀了","人!!!") elif a4>1: reward=3 print("你三杀了","人!!!") return reward # # def main(reward): n=0 print(reward) schedule.every(4).seconds.do(jianc)#执行定时截屏 while True: #循环 schedule.run_pending() n = n+1 time.sleep(4) reward=jianc() return reward if __name__ == '__main__': #print(reward) lock.acquire() l=0 while True: #循环 l = l+1 time.sleep(4) main(reward) print('得分',reward) lock.release() ``` 这就是代码,识别准确率比较低,但是最重要的是最后得到的结果不能输出, 我想要的是,识别一张图片输出一个reward,然后在识别下一个图片。 应该怎么改呀,大佬们。 if a > 0.76 and a<0.83: reward=1 print("你击杀了",reward,"人!!!") #win32api.SetCursorPos([topx + 290, topy + 310]) #win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0) #win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0) elif a1>0.84: reward=-1 print("你被击杀了",reward,"人!!!") return reward elif a2>0.9: reward=1 print("你摧毁了防御塔",reward,"人!!!") elif a3>1: reward=2 print("你双杀了","人!!!") elif a4>1: reward=3 print("你三杀了","人!!!") return reward 这一段代码怎么改才能把reward返回出来,求大佬出来指点一下 把循环拿到外面就好了 ``` import win32gui import win32api import win32con from win32gui import * import time from PIL import Image from PIL import ImageGrab import imagehash import pymouse,pykeyboard,os,sys from pymouse import * from pykeyboard import PyKeyboard import schedule import cv2 import numpy as np import matplotlib.pyplot as plt from threading import Thread,Lock m = PyMouse() k = PyKeyboard() titles = set() lock=Lock() i=0 #reward = 0 #获取电脑上的窗口句柄 def foo(hwnd,mouse): if IsWindow(hwnd) and IsWindowEnabled(hwnd) and IsWindowVisible(hwnd): titles.add(GetWindowText(hwnd)) def playGame(): """Click the game icon in the simulator to enter and displays to the specified location""" EnumWindows(foo, 0) list = [] for title in titles: if title: list.append(title) for title in list: a = 'League of Legends (TM) Client' if title.find(a) != -1: hwnd = win32gui.FindWindow(0,a) win32gui.SetWindowPos(hwnd, win32con.HWND_TOP,0,0,1282,790,win32con.SWP_SHOWWINDOW) hwnd = win32gui.FindWindow(0,a) size = win32gui.GetWindowRect(hwnd) #print(size) # 在模拟器点击游戏图标进入游戏 #win32api.SetCursorPos([size[0] + 410, size[1] + 186]) #win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0) #win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0) #time.sleep(10) return size def jianc(): """Click to implement in the game""" # 点击我知道 #reward = 0 size = playGame() #time.sleep(15) #print(size) topx, topy = size[0], size[1] #print(topx) #print(topy) ImageGrab.grab((topx + 496, topy + 125, topx + 787, topy + 155)).save(r'C:\Users\Administrator\Desktop\game\model/cheshi'+str(i)+'.jpg','JPEG') pic = np.array(Image.open(r'C:\Users\Administrator\Desktop\game\model/cheshi'+str(i)+'.jpg')) N = 125 for a in range(pic.shape[0]): for j in range(pic.shape[1]): if (pic[a][j][0] > N)&(pic[a][j][1] > N)&(pic[a][j][2] > N): pic.itemset((a,j,0),255) pic.itemset((a,j,1),255) pic.itemset((a,j,2),255) else: pic.itemset((a,j,0),0) pic.itemset((a,j,1),0) pic.itemset((a,j,2),0) #plt.imshow(pic) plt.axis('off') cv2.imencode('.jpg', pic)[1].tofile(r'C:\Users\Administrator\Desktop\game\model\检测/cheshi'+str(i)+'.jpg') #cv2.imwrite(r'C:\Users\Administrator\Desktop\game\model/检测/cheshi'+str(i)+'.jpg',pic) #plt.savefig("result.jpg") #plt.show() #im.save(r'C:\Users\Administrator\Desktop\123/'+str(c)+'.jpg','JPEG') #设置保存路径和图片格式 hash_size = 6 hash1 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\model/检测/cheshi'+str(i)+'.jpg'), hash_size=hash_size) hash2 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\击杀了一名.png'), hash_size=hash_size) hash3 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\你已经被击杀.png'), hash_size=hash_size) hash4 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\摧毁防御塔.png'), hash_size=hash_size) hash5 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\双杀.png'), hash_size=hash_size) hash6 = imagehash.average_hash(Image.open(r'C:\Users\Administrator\Desktop\game\截图\三杀.png'), hash_size=hash_size) return hash1,hash2,hash3,hash4,hash5,hash6 # # def main(hash1,hash2,hash3,hash4,hash5,hash6): a = (1 - (hash1 - hash2) / len(hash1.hash) ** 2) a1 = (1 - (hash1 - hash3) / len(hash1.hash) ** 2) a2 = (1 - (hash1 - hash4) / len(hash1.hash) ** 2) a3 = (1 - (hash1 - hash5) / len(hash1.hash) ** 2) a4 = (1 - (hash1 - hash6) / len(hash1.hash) ** 2) #print("你被击杀了",a1) return a,a1,a2,a3,a4 def defen(): #print(reward) schedule.every(4).seconds.do(jianc)#执行定时截屏 #lock.acquire() reward=0 hash1,hash2,hash3,hash4,hash5,hash6=jianc() a,a1,a2,a3,a4=main(hash1,hash2,hash3,hash4,hash5,hash6) #time.sleep(4) #reward=jianc() #循环 if a > 0.76 and a<0.83: reward=1 #print("你击杀了",reward,"人!!!") #win32api.SetCursorPos([topx + 290, topy + 310]) #win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0) #win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0) elif a1>0.84: reward=-1 #print("你被击杀了",reward,"人!!!") #return reward elif a2>0.9: reward=1 #print("你摧毁了防御塔",reward,"人!!!") elif a3>1: reward=2 #print("你双杀了","人!!!") elif a4>1: reward=3 #print("你三杀了","人!!!") else : #print(reward) reward=0 #print('得分',a,a1,a2,a3,a4,reward) #time.sleep(4) #lock.release() return reward if __name__ == '__main__': l=0 while True: #循环 schedule.run_pending() l = l+1 #defen() reward=defen() #print(reward) time.sleep(4) ```
python中使用Skimage进行图像的批量处理 运行程序出错,急需解决,谢谢!
图像批量转换为灰度图,先定义一个函数,然后将这个函数作为第二个参数,运行如下代码,再运行中程序报错,报错内容在代码之后,请问谁能帮忙解决,谢谢! from skimage import data_dir,io,color def convert_gray(f): rgb=io.imread(f) return color.rgb2gray(rgb) str=data_dir+'/*.png' coll = io.ImageCollection(str,load_func=convert_gray) io.imshow(coll[10]) TypeError Traceback (most recent call last) <ipython-input-2-97fc4259a514> in <module>() 7 str=data_dir+'/*.png' 8 coll = io.ImageCollection(str,load_func=convert_gray) ----> 9 io.imshow(coll[10]) C:\Anaconda2\lib\site-packages\skimage\io\collection.pyc in __getitem__(self, n) 258 if img_num is not None: 259 self.data[idx] = self.load_func(fname, img_num=img_num, --> 260 **kwargs) 261 else: 262 self.data[idx] = self.load_func(fname, **kwargs) TypeError: convert_gray() got an unexpected keyword argument 'img_num'
imshow之前有按钮,换系统重新编译后无按钮
imshow之前有按钮,换系统重新编译后无按钮! 以前是这样的![图片说明](https://img-ask.csdn.net/upload/201912/13/1576240244_337711.jpg) 现在是这样的![图片说明](https://img-ask.csdn.net/upload/201912/13/1576240298_135039.jpg) 缺少这些按钮![图片说明](https://img-ask.csdn.net/upload/201912/13/1576240448_899431.jpg)
相见恨晚的超实用网站
相见恨晚的超实用网站 持续更新中。。。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
python 简易微信实现(注册登录+数据库存储+聊天+GUI+文件传输)
socket+tkinter详解+简易微信实现 历经多天的努力,查阅了许多大佬的博客后终于实现了一个简易的微信O(∩_∩)O~~ 简易数据库的实现 使用pands+CSV实现数据库框架搭建 import socket import threading from pandas import * import pymysql import csv # 创建DataFrame对象 # 存储用户数据的表(...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
JavaScript 为什么能活到现在?
作者 | 司徒正美 责编 |郭芮 出品 | CSDN(ID:CSDNnews) JavaScript能发展到现在的程度已经经历不少的坎坷,早产带来的某些缺陷是永久性的,因此浏览器才有禁用JavaScript的选项。甚至在jQuery时代有人问出这样的问题,jQuery与JavaScript哪个快?在Babel.js出来之前,发明一门全新的语言代码代替JavaScript...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
开源并不是你认为的那些事
点击上方蓝字 关注我们开源之道导读所以 ————想要理清开源是什么?先要厘清开源不是什么,名正言顺是句中国的古代成语,概念本身的理解非常之重要。大部分生物多样性的起源,...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植
这篇文章要介绍的是: - 上方植物卡片栏的实现。 - 点击植物卡片,鼠标切换为植物图片。 - 鼠标移动时,判断当前在哪个方格中,并显示半透明的植物作为提示。
相关热词 c#委托 逆变与协变 c#新建一个项目 c#获取dll文件路径 c#子窗体调用主窗体事件 c# 拷贝目录 c# 调用cef 网页填表c#源代码 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天
立即提问