小编Ats*_*shi的帖子

从JPEG或png文件获取绘图数据

我正在编写一个从图形(JPEG)中获取绘图数据的程序.垂直轴是对数的.我成功地制作了一个程序,将水平和垂直轴理解为线性(不是对数),请参阅下面的代码:

在此输入图像描述

%matplotlib inline

from PIL import Image
from scipy import *
from pylab import *

im = array(Image.open('fig1.jpg'))

hh = im.shape[0]
ww = im.shape[2]

imshow(im)    
print(im[100,0,:])

Col = array([255,0,0])#?
bnd = 30

yax = linspace(0.5,2e-4,hh)
xax = linspace(1,14,ww)

for i in range(hh):
    for j in range(ww):
        im[i,j,:] = 255*(any(im[i,j,:]>Col+bnd) or any(im[i,j,:]<Col-bnd))

mapim = abs(im[:,:,0]/255-1).astype(bool)

yval = array([average(yax[mapim[:,t]]) for t in range(ww)])

rlt = interp(range(100),xax,yval)
Run Code Online (Sandbox Code Playgroud)

我不知道如何修改它以使其理解对数轴.请帮我.

python matplotlib scipy python-imaging-library jupyter-notebook

12
推荐指数
1
解决办法
696
查看次数