本文整理汇总了Python中pyworkflow.em.convert.ImageHandler.createImage方法的典型用法代码示例。如果您正苦于以下问题:Python ImageHandler.createImage方法的具体用法?Python ImageHandler.createImage怎么用?Python ImageHandler.createImage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyworkflow.em.convert.ImageHandler
的用法示例。
在下文中一共展示了ImageHandler.createImage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: CustomMaskDialog
# 需要导入模块: from pyworkflow.em.convert import ImageHandler [as 别名]
# 或者: from pyworkflow.em.convert.ImageHandler import createImage [as 别名]
class CustomMaskDialog(ImagePreviewDialog):
def _beforePreview(self):
imgLocation = self.protocolParent.inputImage.get().getLocation()
self.dim = ImageHandler().getDimensions(imgLocation)[0]
self.lastObj = None
self.rightPreviewLabel = "Final mask"
self.message = "Generating mask..."
self.ih = ImageHandler()
self.rightImage = self.ih.createImage()
def _createPreview(self, frame):
""" Should be implemented by subclasses to
create the items preview.
"""
self._previews = []
for i, label in enumerate(MASKRESULT_LABELS):
self.previewLabel = label
previewFrame = tk.Frame(frame)
ImagePreviewDialog._createPreview(self, previewFrame)
self._previews.append(self.preview) # store all previews created
previewFrame.grid(row=i/4, column=i%4)
def _itemSelected(self, obj):
self.lastObj = obj
dialog.FlashMessage(self, self.message, func=self._computeRightPreview)
def _createVarWidgets(self, parent, varName, varLabel, row, col):
var = tk.StringVar()
self._vars[varName] = var
var.set(self.protocolParent.getAttributeValue(varName))
varLabel = tk.Label(parent, text=varLabel)
varLabel.grid(row=row, column=col*2, padx=5, pady=5)
varEntry = tk.Entry(parent, width=10, textvariable=var)
varEntry.grid(row=row, column=col*2+1, padx=5, pady=5)
def _createControls(self, frame):
self._vars = {}
inputFrame = tk.Frame(frame)
inputFrame.grid(row=0, column=0)
for i, varName in enumerate(CUSTOMMASK_VARS):
self._createVarWidgets(inputFrame, varName, CUSTOMMASK_VARS[varName], i%2, i/2)
previewBtn = HotButton(frame, text='Preview', command=self._computeRightPreview)
previewBtn.grid(row=1, column=1, padx=5, pady=5)
def getVarValue(self, varName):
return self._vars[varName].get()
def _computeRightPreview(self, e=None):
""" This function should compute the right preview
using the self.lastObj that was selected
"""
prot = self.protocolParent # short notation
tmp = prot.getProject().getTmpPath()
ext = prot.getExt()
# Convert input image to spider
imgPrefix = 'inputImage'
imgName = '%s.%s' % (imgPrefix, ext)
imgFn = os.path.join(tmp, imgName)
self.ih.convert(self.lastObj, (1, imgFn))
runCustomMaskScript(self.getVarValue('filterRadius1'),
self.getVarValue('sdFactor'),
self.getVarValue('filterRadius2'),
self.getVarValue('maskThreshold'),
workingDir=tmp, ext=ext,
inputImage=imgPrefix+'@1')
for i, preview in enumerate(self._previews):
if i == 0:
self.rightImage.read(imgFn)
else:
self.rightImage.read('%[email protected]%s/stkmask.%s' % (i, tmp, ext))
preview.updateData(self.rightImage.getData())