バイオフォーマットをPythonで使用して顕微鏡画像(.lsm、.czi、.lif) 、名前をつけます)、メタデータを印刷して、画像を表示します。 ome = bf.OMEXML(md)
私にエラーが表示されます(下記)。私はそれがmd
の中に保存されている情報について話していると思います。 md
の情報がすべてASCIIでないことが好きではありません。しかし、私はこの問題をどのように克服するのですか? これは私が書いたものである:Bioformats-Pythonエラー:OMEXML()を使用すると 'ascii'コーデックで文字 'u' xb5'をエンコードできません
import Tkinter as Tk, tkFileDialog
import os
import javabridge as jv
import bioformats as bf
import matplotlib.pyplot as plt
import numpy as np
jv.start_vm(class_path=bf.JARS, max_heap_size='12G')
ユーザーが
iome = ome.image(0) # e.g. first image
print(iome.get_Name())
print(iome.Pixels.get_SizeX())
print(iome.Pixels.get_SizeY())
はここだ
raw_data = []
for z in range(iome.Pixels.get_SizeZ()):
raw_image = reader.read(z=z, series=0, rescale=False)
raw_data.append(raw_image)
raw_data = np.array(raw_data)
ショーは、メタデータたかっnumpyの配列に
#hiding root alllows file diaglog GUI to be shown without any other GUI elements
root = Tk.Tk()
root.withdraw()
file_full_path = tkFileDialog.askopenfilename()
filepath, filename = os.path.split(file_full_path)
os.chdir(os.path.dirname(file_full_path))
print('opening: %s' %filename)
reader = bf.ImageReader(file_full_path)
md = bf.get_omexml_metadata(file_full_path)
ome = bf.OMEXML(md)
入れイメージで動作するファイルを選択し、 e私が手rror:
---------------------------------------------------------------------------
UnicodeEncodeError Traceback (most recent call last)
<ipython-input-22-a22c1dbbdd1e> in <module>()
11 reader = bf.ImageReader(file_full_path)
12 md = bf.get_omexml_metadata(file_full_path)
---> 13 ome = bf.OMEXML(md)
/anaconda/envs/env2_bioformats/lib/python2.7/site-packages/bioformats/omexml.pyc in __init__(self, xml)
318 if isinstance(xml, str):
319 xml = xml.encode("utf-8")
--> 320 self.dom = ElementTree.ElementTree(ElementTree.fromstring(xml))
321
322 # determine OME namespaces
<string> in XML(text)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb5' in position 1623: ordinal not in range(128)
はここ独自の顕微鏡形式で代表test imageだ
1つの画像をアップロードできますか? –
@ MaximilianPeters、私はテスト用の.lsmファイルを追加しました。任意の提案をいただければ幸いです。ありがとう! – puifais