!7 module ImageSegmenter extends DynImageSurface { float contrastThreshold = 0.5f; visualize { ret withCenteredLine(super.visualize(), withLabel("Contrast Threshold:", jLiveValueSlider(dm_fieldLiveValue('contrastThreshold)))); } start { ownResource(vmBus_onMessage('newClipboardContents, voidfunc(fO o) { if (o cast BufferedImage) { temp enter(); thread { setImage(o); new AutoSegmenter as; as.g = 3; as.contrastThreshold = contrastThreshold; overlaySelectionsOnImageSurface(imageSurface, as.go(o)); } } })); } }