我尝试将csv文件转换为RGB文件,如下所示:
angular.module('abc', []);
controller('abcd', function ($scope) {
if ($scope.paperSelection == 377.95) {
$scope.disableInputs === true;
}
else
$scope.disableInputs ===false;
}
);
问题是最后一行是给了我一个" IndexError:图像索引超出范围"。当我打印出x和y时,我发现无论何时它们中的任何一个达到5,这是我的文件的宽度,而不是高度,无论我如何使用它,无论x或y是否达到5,它都会抛出错误这就是我没有搞清楚的事情。任何更好的实现也是受欢迎的。
答案 0 :(得分:2)
如果有人想要工作算法,请点击:
from PIL import Image, ImageDraw
from numpy import genfromtxt
g = open('myFile.csv','r')
temp = genfromtxt(g, delimiter = ',')
im = Image.fromarray(temp).convert('RGB')
pix = im.load()
rows, cols = im.size
for x in range(cols):
for y in range(rows):
print str(x) + " " + str(y)
pix[x,y] = (int(temp[y,x] // 256 // 256 % 256),int(temp[y,x] // 256 % 256),int(temp[y,x] % 256))
im.save(g.name[0:-4] + '.jpeg')
这只是用temp [y,x]改变temp [x,y]并交换cols和rows的问题。