From suryak at udel.edu Sun Jun 11 23:59:55 2017 From: suryak at udel.edu (Surya Kasturi) Date: Sun, 11 Jun 2017 23:59:55 -0400 Subject: [scikit-image] Fitting Ellipse Model Message-ID: Hi, I am trying to understand how measure.EllipseModel is working. Following is the snippet. x1, y1, a1, b1 = 3, 3, 20, 40 rr1, cc1 = draw.ellipse_perimeter(x1, y1, a1, b1) # some ellipse # Estimate ellipse model with the above points model = EllipseModel() model.estimate(np.array([rr1,cc1]).T) x2, y2, a2, b2, theta = np.array(model.params, dtype=int) rr2, cc2 = draw.ellipse_perimeter(x2, y2, a2, b2, orientation=theta) # estimated ellipse ax.scatter(rr1, cc1, s=5, label="actual") ax.scatter(rr2, cc2, s=5, label="estimated") The below is output. Shouldn?t both ellipses in the image overlap since I?m using data points of a perfect ellipse to estimate a new ellipse? Thanks Surya -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2017-06-11 at 11.56.31 PM.png Type: image/png Size: 33091 bytes Desc: not available URL: From stefanv at berkeley.edu Mon Jun 12 14:23:32 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Mon, 12 Jun 2017 11:23:32 -0700 Subject: [scikit-image] Fitting Ellipse Model In-Reply-To: References: Message-ID: <1497291812.1908265.1006962368.4659C72B@webmail.messagingengine.com> Hi Surya On Sun, Jun 11, 2017, at 20:59, Surya Kasturi wrote: > The below is output. Shouldn?t both ellipses in the image overlap > since I?m using data points of a perfect ellipse to estimate a new > ellipse? I believe you've uncovered a bug. Ellipse fitting and ellipse drawing seem to use different coordinate conventions. Please continue the discussion here: https://github.com/scikit-image/scikit-image/issues/2646 Best regards St?fan -------------- next part -------------- An HTML attachment was scrubbed... URL: From suryak at udel.edu Mon Jun 12 19:54:12 2017 From: suryak at udel.edu (Surya Kasturi) Date: Mon, 12 Jun 2017 19:54:12 -0400 Subject: [scikit-image] Fitting Ellipse Model In-Reply-To: <1497291812.1908265.1006962368.4659C72B@webmail.messagingengine.com> References: <1497291812.1908265.1006962368.4659C72B@webmail.messagingengine.com> Message-ID: Hi Stefan, I?ve commented this snippet on Github. Anyway, is there any functionality similar to matchShapes provided in OpenCV? Thanks Surya > On Jun 12, 2017, at 2:23 PM, Stefan van der Walt wrote: > > Hi Surya > > On Sun, Jun 11, 2017, at 20:59, Surya Kasturi wrote: >> The below is output. Shouldn?t both ellipses in the image overlap since I?m using data points of a perfect ellipse to estimate a new ellipse? > > I believe you've uncovered a bug. Ellipse fitting and ellipse drawing seem to use different coordinate conventions. Please continue the discussion here: > > https://github.com/scikit-image/scikit-image/issues/2646 > > Best regards > St?fan > -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefanv at berkeley.edu Mon Jun 12 20:04:35 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Mon, 12 Jun 2017 17:04:35 -0700 Subject: [scikit-image] Fitting Ellipse Model In-Reply-To: References: <1497291812.1908265.1006962368.4659C72B@webmail.messagingengine.com> Message-ID: <1497312275.2850571.1007291112.0FE93C85@webmail.messagingengine.com> Hi Surya On Mon, Jun 12, 2017, at 16:54, Surya Kasturi wrote: > I?ve commented this snippet on Github. Anyway, is there any > functionality similar to matchShapes[1] provided in OpenCV? We have Hu moments implemented, so you can plug those directly into the formulas shown at the link you gave. Best regards St?fan Links: 1. http://docs.opencv.org/2.4/modules/imgproc/doc/structural_analysis_and_shape_descriptors.html?highlight=fitellipse#matchshapes -------------- next part -------------- An HTML attachment was scrubbed... URL: From imagepy at sina.com Mon Jun 12 20:18:44 2017 From: imagepy at sina.com (imagepy at sina.com) Date: Tue, 13 Jun 2017 08:18:44 +0800 Subject: [scikit-image] =?gbk?b?u9i4tDpSZTogIEZpdHRpbmcgRWxsaXBzZSBNb2Rl?= =?gbk?q?l?= Message-ID: <20170613001844.8D664400C1@webmail.sinamail.sina.com.cn> but i think the opencv's hu moment is a vector implement(integrate contours), but scikit-image one is raster implement(statistic the pixcel coordinate) -------------------------------- ????????android??? -------- ???? -------- ???:Stefan van der Walt ??????:2017?6?13? 08:05(???) ???:Surya Kasturi Mailing list for scikit-image (http://scikit-image.org) ??:Re: [scikit-image] Fitting Ellipse Model Hi Surya On Mon, Jun 12, 2017, at 16:54, Surya Kasturi wrote: I?ve commented this snippet on Github. Anyway, is there any functionality similar to matchShapes provided in OpenCV? We have Hu moments implemented, so you can plug those directly into the formulas shown at the link you gave. Best regards St?fan _______________________________________________ scikit-image mailing list scikit-image at python.org https://mail.python.org/mailman/listinfo/scikit-image -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefanv at berkeley.edu Tue Jun 13 10:23:44 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Tue, 13 Jun 2017 07:23:44 -0700 Subject: [scikit-image] =?utf-8?b?5Zue5aSNOlJlOiAgRml0dGluZyBFbGxpcHNl?= =?utf-8?q?_Model?= In-Reply-To: <20170613001844.8D664400C1@webmail.sinamail.sina.com.cn> References: <20170613001844.8D664400C1@webmail.sinamail.sina.com.cn> Message-ID: <1497363824.3924193.1007973344.5A2C2E09@webmail.messagingengine.com> On Mon, Jun 12, 2017, at 17:18, imagepy at sina.com wrote: > but i think the opencv's hu moment is a vector implement(integrate > contours), but scikit-image one is raster implement(statistic the > pixcel coordinate) Ah, yes, I missed that. I've filed an issue: https://github.com/scikit-image/scikit-image/issues/2682 St?fan -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.protter at gmail.com Wed Jun 21 18:22:37 2017 From: david.protter at gmail.com (David Protter) Date: Wed, 21 Jun 2017 16:22:37 -0600 Subject: [scikit-image] Why does img_as force incoming data Message-ID: Hi all, new here and having a lot of fun using Skimage for scientific image analysis. I?m doign some normalization on images coming in as uint16, to expand their dynamic range. After normalization, images are float64, and I?m trying to convert them back to uint16. However, it seems like all the img_as functions ignore the kind of float coming in, since anything of kind float is constrained to [-1 to 1]. Below is the section out of the convert() function that seems to do this. # float -> any if kind_in == 'f': if np.min(image) < -1.0 or np.max(image) > 1.0: raise ValueError("Images of type float must be between -1 and 1.") if kind_out == 'f': # float -> float if itemsize_in > itemsize_out: prec_loss() return image.astype(dtype_out) Obviously my float64 array returns kind_in as ?f?, but has values outside of this range. I?m pretty new to all this, am I missing something obvious? Thanks! Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefanv at berkeley.edu Wed Jun 21 19:16:46 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Wed, 21 Jun 2017 16:16:46 -0700 Subject: [scikit-image] Why does img_as force incoming data In-Reply-To: References: Message-ID: <1498087006.977773.1017256552.3F6E0106@webmail.messagingengine.com> Hi Dave On Wed, Jun 21, 2017, at 15:22, David Protter wrote: > Hi all, new here and having a lot of fun using Skimage for scientific > image analysis. Glad to hear it! > I?m doign some normalization on images coming in as uint16, to expand > their dynamic range. After normalization, images are float64, and I?m > trying to convert them back to uint16. However, it seems like all the > img_as functions ignore the kind of float coming in, since anything of > kind float is constrained to [-1 to 1]. Below is the section out of > the convert() function that seems to do this. Floating point images are expected to be between -1 and 1, as described here: http://scikit-image.org/docs/stable/user_guide/data_types.html However, many functions support working on data in its original range, by specifying `preserve_range=True`. To convert your data from uint16 to float without changing its range, do: img_float = img.astype(float) Best regards St?fan -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.protter at gmail.com Wed Jun 21 19:29:34 2017 From: david.protter at gmail.com (David Protter) Date: Wed, 21 Jun 2017 17:29:34 -0600 Subject: [scikit-image] Why does img_as force incoming data In-Reply-To: <1498087006.977773.1017256552.3F6E0106@webmail.messagingengine.com> References: <1498087006.977773.1017256552.3F6E0106@webmail.messagingengine.com> Message-ID: Thank you! Will this also work going back the other way? (Float to uint?) On Jun 21, 2017 5:16 PM, "Stefan van der Walt" wrote: > Hi Dave > > On Wed, Jun 21, 2017, at 15:22, David Protter wrote: > > Hi all, new here and having a lot of fun using Skimage for scientific > image analysis. > > > Glad to hear it! > > I?m doign some normalization on images coming in as uint16, to expand > their dynamic range. After normalization, images are float64, and I?m > trying to convert them back to uint16. However, it seems like all the > img_as functions ignore the kind of float coming in, since anything of kind > float is constrained to [-1 to 1]. Below is the section out of the > convert() function that seems to do this. > > > Floating point images are expected to be between -1 and 1, as described > here: > > http://scikit-image.org/docs/stable/user_guide/data_types.html > > However, many functions support working on data in its original range, by > specifying `preserve_range=True`. > > To convert your data from uint16 to float without changing its range, do: > > img_float = img.astype(float) > > Best regards > St?fan > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cedric.espenel at gmail.com Wed Jun 21 19:39:15 2017 From: cedric.espenel at gmail.com (Cedric Espenel) Date: Wed, 21 Jun 2017 23:39:15 +0000 Subject: [scikit-image] Why does img_as force incoming data In-Reply-To: References: <1498087006.977773.1017256552.3F6E0106@webmail.messagingengine.com> Message-ID: Hi Dave, I think this scikit-image should answers your questions: http://scikit-image.org/docs/stable/user_guide/data_types.html Best, Cedric On Wed, Jun 21, 2017 at 4:30 PM David Protter wrote: > Thank you! Will this also work going back the other way? (Float to uint?) > > On Jun 21, 2017 5:16 PM, "Stefan van der Walt" > wrote: > >> >> >> >> >> >> >> >> >> >> >> Hi Dave >> >> >> >> >> >> On Wed, Jun 21, 2017, at 15:22, David Protter wrote: >> >> >> Hi all, new here and having a lot of fun using Skimage for scientific >> image analysis. >> >> >> >> >> >> >> >> Glad to hear it! >> >> >> >> >> >> I?m doign some normalization on images coming in as uint16, to expand >> their dynamic range. After normalization, images are float64, and I?m >> trying to convert them back to uint16. However, it seems like all the >> img_as functions ignore the kind of float coming in, since anything of kind >> float is constrained to [-1 to 1]. Below is the section out of the >> convert() function that seems to do this. >> >> >> >> >> >> >> >> Floating point images are expected to be between -1 and 1, as described >> here: >> >> >> >> >> >> http://scikit-image.org/docs/stable/user_guide/data_types.html >> >> >> >> >> >> However, many functions support working on data in its original range, by >> specifying `preserve_range=True`. >> >> >> >> >> >> To convert your data from uint16 to float without changing its range, do: >> >> >> >> >> >> img_float = img.astype(float) >> >> >> >> >> >> Best regards >> >> >> St?fan >> >> >> >> >> >> >> >> >> >> > > _______________________________________________ > > scikit-image mailing list > > scikit-image at python.org > > https://mail.python.org/mailman/listinfo/scikit-image > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jni.soma at gmail.com Wed Jun 21 20:30:00 2017 From: jni.soma at gmail.com (Juan Nunez-Iglesias) Date: Thu, 22 Jun 2017 10:30:00 +1000 Subject: [scikit-image] Why does img_as force incoming data In-Reply-To: References: <1498087006.977773.1017256552.3F6E0106@webmail.messagingengine.com> Message-ID: <3dadd5b5-02fe-4733-a452-c5a3809f52f7@Spark> Hi David, Yes, img_float.astype('uint16') will work, but you'll need to make sure you map your float image to the range 0-65535. Juan. On 22 Jun 2017, 9:29 AM +1000, David Protter , wrote: > Thank you! Will this also work going back the other way? (Float to uint?) > > > On Jun 21, 2017 5:16 PM, "Stefan van der Walt" wrote: > > > Hi Dave > > > > > > On Wed, Jun 21, 2017, at 15:22, David Protter wrote: > > > > Hi all, new here and having a lot of fun using Skimage for scientific image analysis. > > > > > > Glad to hear it! > > > > > > > I?m doign some normalization on images coming in as uint16, to expand their dynamic range. After normalization, images are float64, and I?m trying to convert them back to uint16. However, it seems like all the img_as functions ignore the kind of float coming in, since anything of kind float is constrained to [-1 to 1]. Below is the section out of the convert() function that seems to do this. > > > > > > Floating point images are expected to be between -1 and 1, as described here: > > > > > > http://scikit-image.org/docs/stable/user_guide/data_types.html > > > > > > However, many functions support working on data in its original range, by specifying `preserve_range=True`. > > > > > > To convert your data from uint16 to float without changing its range, do: > > > > > > img_float = img.astype(float) > > > > > > Best regards > > > St?fan > > > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image -------------- next part -------------- An HTML attachment was scrubbed... URL: From jaime.frio at gmail.com Mon Jun 26 05:30:23 2017 From: jaime.frio at gmail.com (=?UTF-8?Q?Jaime_Fern=C3=A1ndez_del_R=C3=ADo?=) Date: Mon, 26 Jun 2017 11:30:23 +0200 Subject: [scikit-image] Refactoring ndimage Message-ID: Hi all, I have started working on an ambitious refactor of scipy.ndimage. Some more context on what I would like to achieve can be found here . scikit-image is probably the biggest "customer" of ndimage, so even though the API and performance are not expected to change, you may want to have a say. Assuming there is no major concern with the overall plan, I would also like to poke this community for help with: - figuring out a sensible test strategy: Ralf Gommers points out that we should probably use scikit-image's test suite regularly to complement the relatively few tests currently in ndimage: is the development version of scikit-image stable enough for this purpose or do you suggest using a specific stable release? Any other ideas? - PR reviewing. The idea is to make this refactor as incremental as possible. That means many smaller interdependent PRs. Even if you don't have commit rights to the scipy repository you are probably better versed than most of us in image processing algorithms, so if anyone can keep an eye on ndimage PRs and provide occasional reviews it would be greatly appreciated. - expert consulting: some of the code in ndimage is pretty hard to understand, e.g. I struggle with spline interpolation. If anyone with the proper academic knowledge is willing to answer stupid questions, please let me know. - the refactoring itself: if anyone would like to be a part of this, it would be my pleasure! A basic command of the C language is needed, but I'm more than willing to mentor beginners. Thanks! Jaime -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes de dominaci?n mundial. -------------- next part -------------- An HTML attachment was scrubbed... URL: From nelle.varoquaux at gmail.com Mon Jun 26 12:28:13 2017 From: nelle.varoquaux at gmail.com (Nelle Varoquaux) Date: Mon, 26 Jun 2017 09:28:13 -0700 Subject: [scikit-image] Fwd: [SciPy-User] EuroSciPy 2017 call for contributions - extension of deadline In-Reply-To: <20170626104953.GA16487@pi-x230> References: <20170626104953.GA16487@pi-x230> Message-ID: Hi everyone, I thought some of you might be interested in this dead line extension. Cheers, N ---------- Forwarded message ---------- From: Pierre de Buyl Date: 26 June 2017 at 03:49 Subject: [SciPy-User] EuroSciPy 2017 call for contributions - extension of deadline To: scipy-user at python.org, numpy-discussion at python.org (Apologies if you receive multiple copies of this message) 10th European Conference on Python in Science August 28 - September 1, 2017 in Erlangen, Germany The Call for Papers is extended to July 02, 2017 23:00 CEST Description: The EuroSciPy meeting is a cross-disciplinary gathering focused on the use and development of the Python language in scientific research. This event strives to bring together both users and developers of scientific tools, as well as academic research and state of the art industry. Erlangen is one of Germany's major science hubs and located north of Munich (90 minutes by train). The Call for Papers is extended to July 02, 2017 23:00 CEST Regards, The EuroSciPy team https://www.euroscipy.org/2017/ _______________________________________________ SciPy-User mailing list SciPy-User at python.org https://mail.python.org/mailman/listinfo/scipy-user From stefanv at berkeley.edu Mon Jun 26 17:20:49 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Mon, 26 Jun 2017 14:20:49 -0700 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: Message-ID: <1498512049.2546244.1022068792.100ACBD6@webmail.messagingengine.com> Hi Jaime On Mon, Jun 26, 2017, at 02:30, Jaime Fern?ndez del R?o wrote: > I have started working on an ambitious refactor of scipy.ndimage. Some > more context on what I would like to achieve can be found here[1]. I hope you can hear the loud applause coming in from all directions! One of the big barriers to fixing issues in ndimage is the obscurity of the code. I am delighted that you have decided to give it a good look- over and refactor. My C knowledge is not nearly as good as yours, so I don't know whether I'd be very helpful as a reviewer, but I can try. Best regards St?fan Links: 1. https://mail.python.org/pipermail/scipy-dev/2017-June/021986.html -------------- next part -------------- An HTML attachment was scrubbed... URL: From nelle.varoquaux at gmail.com Mon Jun 26 17:23:51 2017 From: nelle.varoquaux at gmail.com (Nelle Varoquaux) Date: Mon, 26 Jun 2017 14:23:51 -0700 Subject: [scikit-image] Refactoring ndimage In-Reply-To: <1498512049.2546244.1022068792.100ACBD6@webmail.messagingengine.com> References: <1498512049.2546244.1022068792.100ACBD6@webmail.messagingengine.com> Message-ID: Hi Jaime, Will you be at scipy? Some of the scikit-image crowd will be there for a sprint: that might be a good place to have a short meeting to discuss with the people that actually know something about ndimage (ie, not me?). Cheers, N On 26 June 2017 at 14:20, Stefan van der Walt wrote: > Hi Jaime > > On Mon, Jun 26, 2017, at 02:30, Jaime Fern?ndez del R?o wrote: > > I have started working on an ambitious refactor of scipy.ndimage. Some more > context on what I would like to achieve can be found here. > > > I hope you can hear the loud applause coming in from all directions! > > One of the big barriers to fixing issues in ndimage is the obscurity of the > code. I am delighted that you have decided to give it a good look-over and > refactor. > > My C knowledge is not nearly as good as yours, so I don't know whether I'd > be very helpful as a reviewer, but I can try. > > Best regards > St?fan > > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > From robbmcleod at gmail.com Mon Jun 26 18:09:41 2017 From: robbmcleod at gmail.com (Robert McLeod) Date: Mon, 26 Jun 2017 15:09:41 -0700 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: Message-ID: Jaime, One thing that might be a good selling point would be if you built-in threaded operations on image stacks, which I think are pretty common in all forms of microscopy now. I'm thinking particularly of `ni.convolve()`, where one might want to repeatedly call the function on every image frame in the stack. Generally multi-threading kernel operations like convolve on single images is tricky, but if you have a stack it's much more straight-forward to parallelize. Right now I would do such a thing with a thread pool in Python, but it would scale a lot better if there was C-level support. E.g.: import multiprocessing as mp import numpy as np import scipy.ndimage as ni # funcHandle must release the GIL def stackFunc( funcHandle, images, funcArgs ): tPool = mp.ThreadPool( self.n_threads ) slices = self.images.shape[0] # Build parameters list for the threaded processes, consisting of index tArgs = [None] * slices for J in np.arange(slices): tArgs[J] = (J, images, funcArgs) # All operations are done 'in-place' tPool.map( funcHandle, tArgs ) tPool.close() tPool.join() Sincerely, Robert On Mon, Jun 26, 2017 at 2:30 AM, Jaime Fern?ndez del R?o < jaime.frio at gmail.com> wrote: > Hi all, > > I have started working on an ambitious refactor of scipy.ndimage. Some > more context on what I would like to achieve can be found here > . > > scikit-image is probably the biggest "customer" of ndimage, so even though > the API and performance are not expected to change, you may want to have a > say. > > Assuming there is no major concern with the overall plan, I would also > like to poke this community for help with: > > - figuring out a sensible test strategy: Ralf Gommers points out that > we should probably use scikit-image's test suite regularly to complement > the relatively few tests currently in ndimage: is the development version > of scikit-image stable enough for this purpose or do you suggest using a > specific stable release? Any other ideas? > - PR reviewing. The idea is to make this refactor as incremental as > possible. That means many smaller interdependent PRs. Even if you don't > have commit rights to the scipy repository you are probably better versed > than most of us in image processing algorithms, so if anyone can keep an > eye on ndimage PRs > > and provide occasional reviews it would be greatly appreciated. > - expert consulting: some of the code in ndimage is pretty hard to > understand, e.g. I struggle with spline interpolation. If anyone with the > proper academic knowledge is willing to answer stupid questions, please let > me know. > - the refactoring itself: if anyone would like to be a part of this, > it would be my pleasure! A basic command of the C language is needed, but > I'm more than willing to mentor beginners. > > Thanks! > > Jaime > > -- > (\__/) > ( O.o) > ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes > de dominaci?n mundial. > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > -- Robert McLeod, Ph.D. robert.mcleod at unibas.ch robert.mcleod at bsse.ethz.ch robbmcleod at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From cedric.espenel at gmail.com Mon Jun 26 19:19:15 2017 From: cedric.espenel at gmail.com (Cedric Espenel) Date: Mon, 26 Jun 2017 16:19:15 -0700 Subject: [scikit-image] Parallel processing segmentation while keeping labels Message-ID: Hi, I'm working on a project where I have to segment out nucleus of cells in a volume. I use random_walker with define markers for every nuclei. If I try to run it on the all volume the segmentation works well but it's very slow. So I used util.view_as_blocks function from scikit to split my image and markers and I loop over the different block using joblib: rw_dapi_chunks = Parallel(n_jobs = 4)(delayed(segmentation.random_walker)(chunks[i,j], chunks_markers[i,j], beta = 3000, mode='cg_mg') for i in range(2) for j in range(2)) So I end up with a list of 4 images and if I combine these images (btw I'm not sure what is the best way for doing that? I just add them up in an empty array) everything work well, except that I end-up with nuclei with 2 different labels: [image: Images int?gr?es 1] Am I doing something wrong? Is there a way to split your images in block for parallel computing but being able to get the labeling right at the end? Best, Cedric -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image.png Type: image/png Size: 24856 bytes Desc: not available URL: From jaime.frio at gmail.com Tue Jun 27 05:18:55 2017 From: jaime.frio at gmail.com (=?UTF-8?Q?Jaime_Fern=C3=A1ndez_del_R=C3=ADo?=) Date: Tue, 27 Jun 2017 11:18:55 +0200 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: <1498512049.2546244.1022068792.100ACBD6@webmail.messagingengine.com> Message-ID: On Mon, Jun 26, 2017 at 11:23 PM, Nelle Varoquaux wrote: > Hi Jaime, > > Will you be at scipy? Some of the scikit-image crowd will be there for > a sprint: that might be a good place to have a short meeting to > discuss with the people that actually know something about ndimage > (ie, not me?). > Unfortunately no. I have yet to figure a convincing excuse to make these conferences something that my employer pays for. And outside of work my vacation days budget is almost entirely taken by family plans. What I could do is attend the Euroscipy sprints: there seem to be relatively cheap flights from Z?rich, and it's even within driving distance. Are there any plans for that? Jaime > > Cheers, > N > > On 26 June 2017 at 14:20, Stefan van der Walt > wrote: > > Hi Jaime > > > > On Mon, Jun 26, 2017, at 02:30, Jaime Fern?ndez del R?o wrote: > > > > I have started working on an ambitious refactor of scipy.ndimage. Some > more > > context on what I would like to achieve can be found here. > > > > > > I hope you can hear the loud applause coming in from all directions! > > > > One of the big barriers to fixing issues in ndimage is the obscurity of > the > > code. I am delighted that you have decided to give it a good look-over > and > > refactor. > > > > My C knowledge is not nearly as good as yours, so I don't know whether > I'd > > be very helpful as a reviewer, but I can try. > > > > Best regards > > St?fan > > > > > > _______________________________________________ > > scikit-image mailing list > > scikit-image at python.org > > https://mail.python.org/mailman/listinfo/scikit-image > > > -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes de dominaci?n mundial. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jaime.frio at gmail.com Tue Jun 27 05:26:50 2017 From: jaime.frio at gmail.com (=?UTF-8?Q?Jaime_Fern=C3=A1ndez_del_R=C3=ADo?=) Date: Tue, 27 Jun 2017 11:26:50 +0200 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: Message-ID: On Tue, Jun 27, 2017 at 12:09 AM, Robert McLeod wrote: > Jaime, > > One thing that might be a good selling point would be if you built-in > threaded operations on image stacks, which I think are pretty common in all > forms of microscopy now. I'm thinking particularly of `ni.convolve()`, > where one might want to repeatedly call the function on every image frame > in the stack. Generally multi-threading kernel operations like convolve on > single images is tricky, but if you have a stack it's much more > straight-forward to parallelize. Right now I would do such a thing with a > thread pool in Python, but it would scale a lot better if there was C-level > support. E.g.: > I think the biggest hurdle for adding any such low-level support for multithreading in scipy is not having a portable threading library that will work on the myriad platforms that scipy is supposed to work on. In any case, such a change would have to be a next step after making ndimage something sane to work with, which is the purpose of the refactoring I was describing. Jaime > > import multiprocessing as mp > import numpy as np > import scipy.ndimage as ni > > # funcHandle must release the GIL > def stackFunc( funcHandle, images, funcArgs ): > tPool = mp.ThreadPool( self.n_threads ) > > slices = self.images.shape[0] > # Build parameters list for the threaded processes, consisting of > index > tArgs = [None] * slices > for J in np.arange(slices): > tArgs[J] = (J, images, funcArgs) > > # All operations are done 'in-place' > tPool.map( funcHandle, tArgs ) > tPool.close() > tPool.join() > > > Sincerely, > > Robert > > > On Mon, Jun 26, 2017 at 2:30 AM, Jaime Fern?ndez del R?o < > jaime.frio at gmail.com> wrote: > >> Hi all, >> >> I have started working on an ambitious refactor of scipy.ndimage. Some >> more context on what I would like to achieve can be found here >> . >> >> scikit-image is probably the biggest "customer" of ndimage, so even >> though the API and performance are not expected to change, you may want to >> have a say. >> >> Assuming there is no major concern with the overall plan, I would also >> like to poke this community for help with: >> >> - figuring out a sensible test strategy: Ralf Gommers points out that >> we should probably use scikit-image's test suite regularly to complement >> the relatively few tests currently in ndimage: is the development version >> of scikit-image stable enough for this purpose or do you suggest using a >> specific stable release? Any other ideas? >> - PR reviewing. The idea is to make this refactor as incremental as >> possible. That means many smaller interdependent PRs. Even if you don't >> have commit rights to the scipy repository you are probably better versed >> than most of us in image processing algorithms, so if anyone can keep an >> eye on ndimage PRs >> >> and provide occasional reviews it would be greatly appreciated. >> - expert consulting: some of the code in ndimage is pretty hard to >> understand, e.g. I struggle with spline interpolation. If anyone with the >> proper academic knowledge is willing to answer stupid questions, please let >> me know. >> - the refactoring itself: if anyone would like to be a part of this, >> it would be my pleasure! A basic command of the C language is needed, but >> I'm more than willing to mentor beginners. >> >> Thanks! >> >> Jaime >> >> -- >> (\__/) >> ( O.o) >> ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes >> de dominaci?n mundial. >> >> _______________________________________________ >> scikit-image mailing list >> scikit-image at python.org >> https://mail.python.org/mailman/listinfo/scikit-image >> >> > > > -- > Robert McLeod, Ph.D. > robert.mcleod at unibas.ch > robert.mcleod at bsse.ethz.ch > robbmcleod at gmail.com > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes de dominaci?n mundial. -------------- next part -------------- An HTML attachment was scrubbed... URL: From egor.v.panfilov at gmail.com Tue Jun 27 10:49:15 2017 From: egor.v.panfilov at gmail.com (Egor Panfilov) Date: Tue, 27 Jun 2017 17:49:15 +0300 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: Message-ID: Hi Jaime, Very nice to hear that there is a major improvement to `scipy` on its way :). Regarding your questions: - Typically, our `master` branch is pretty stable, and we're fixing the arising bugs as fast as possible, so you might rely on our CI to be green. >From my point of view, `skimage` could be a good place to host more or less domain-specific tests, although I'm not really sure what does specificity mean in case of `ndimage`: convolutions, rescaling, interpolation, basic filtering are pretty generic; - Please, also notice that we've recently switched from `nose` to `pytest` (thanks to Nelle ;)), and any new tests should not have `nose` dependency; - Not sure that I'll find enough time to contribute to the code by myself, but it won't harm if you could provide to the public some directions on where to start with `scipy.ndimage` C-code. Keep up the great work, and best of luck! :) Regards, Egor Panfilov 2017-06-26 12:30 GMT+03:00 Jaime Fern?ndez del R?o : > Hi all, > > I have started working on an ambitious refactor of scipy.ndimage. Some > more context on what I would like to achieve can be found here > . > > scikit-image is probably the biggest "customer" of ndimage, so even though > the API and performance are not expected to change, you may want to have a > say. > > Assuming there is no major concern with the overall plan, I would also > like to poke this community for help with: > > - figuring out a sensible test strategy: Ralf Gommers points out that > we should probably use scikit-image's test suite regularly to complement > the relatively few tests currently in ndimage: is the development version > of scikit-image stable enough for this purpose or do you suggest using a > specific stable release? Any other ideas? > - PR reviewing. The idea is to make this refactor as incremental as > possible. That means many smaller interdependent PRs. Even if you don't > have commit rights to the scipy repository you are probably better versed > than most of us in image processing algorithms, so if anyone can keep an > eye on ndimage PRs > > and provide occasional reviews it would be greatly appreciated. > - expert consulting: some of the code in ndimage is pretty hard to > understand, e.g. I struggle with spline interpolation. If anyone with the > proper academic knowledge is willing to answer stupid questions, please let > me know. > - the refactoring itself: if anyone would like to be a part of this, > it would be my pleasure! A basic command of the C language is needed, but > I'm more than willing to mentor beginners. > > Thanks! > > Jaime > > -- > (\__/) > ( O.o) > ( > <) Este es Conejo. Copia a Conejo en tu firma y ay?dale en sus planes > de dominaci?n mundial. > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefanv at berkeley.edu Tue Jun 27 11:06:11 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Tue, 27 Jun 2017 08:06:11 -0700 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: Message-ID: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> On Tue, Jun 27, 2017, at 07:49, Egor Panfilov wrote: > - Not sure that I'll find enough time to contribute to the code by > myself, but it won't harm if you could provide to the public some > directions on where to start with `scipy.ndimage` C-code. Making ndimage developer notes along the way would be extremely helpful! St?fan -------------- next part -------------- An HTML attachment was scrubbed... URL: From jaime.frio at gmail.com Tue Jun 27 11:20:57 2017 From: jaime.frio at gmail.com (=?UTF-8?Q?Jaime_Fern=C3=A1ndez_del_R=C3=ADo?=) Date: Tue, 27 Jun 2017 17:20:57 +0200 Subject: [scikit-image] Refactoring ndimage In-Reply-To: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> References: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> Message-ID: On Tue, Jun 27, 2017 at 5:06 PM, Stefan van der Walt wrote: > On Tue, Jun 27, 2017, at 07:49, Egor Panfilov wrote: > > - Not sure that I'll find enough time to contribute to the code by myself, > but it won't harm if you could provide to the public some directions on > where to start with `scipy.ndimage` C-code. > > > Making ndimage developer notes along the way would be extremely helpful! > I started trying to document how ndimage internals work here: https://docs.google.com/document/d/1IJagsIVK9UAR0CU4kriipb0z3uxJDOdK1eTjBTlC5KU/edit?usp=sharing I was mostly trying to document my own understanding of ndimage, but at some point I needed to start writing code, not literature! But I guess it could be repurposed to become those developer notes. Jaime -------------- next part -------------- An HTML attachment was scrubbed... URL: From ralf.gommers at gmail.com Tue Jun 27 16:55:32 2017 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Wed, 28 Jun 2017 08:55:32 +1200 Subject: [scikit-image] Refactoring ndimage In-Reply-To: References: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> Message-ID: On Wed, Jun 28, 2017 at 3:20 AM, Jaime Fern?ndez del R?o < jaime.frio at gmail.com> wrote: > On Tue, Jun 27, 2017 at 5:06 PM, Stefan van der Walt > wrote: > >> On Tue, Jun 27, 2017, at 07:49, Egor Panfilov wrote: >> >> - Not sure that I'll find enough time to contribute to the code by >> myself, but it won't harm if you could provide to the public some >> directions on where to start with `scipy.ndimage` C-code. >> >> >> Making ndimage developer notes along the way would be extremely helpful! >> > > I started trying to document how ndimage internals work here: > > https://docs.google.com/document/d/1IJagsIVK9UAR0CU4kriipb0z3uxJD > OdK1eTjBTlC5KU/edit?usp=sharing > > I was mostly trying to document my own understanding of ndimage, but at > some point I needed to start writing code, not literature! But I guess it > could be repurposed to become those developer notes. > That's an awesome start for dev notes, much better than anything we have in the scipy docs now! Ralf -------------- next part -------------- An HTML attachment was scrubbed... URL: From kmichael.aye at gmail.com Tue Jun 27 17:04:36 2017 From: kmichael.aye at gmail.com (K.-Michael Aye) Date: Tue, 27 Jun 2017 15:04:36 -0600 Subject: [scikit-image] Refactoring ndimage In-Reply-To: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> References: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> Message-ID: <5E790BA3-D490-415F-9A2F-2D0E78D5309E@gmail.com> Awesome effort! ;) Is it maybe worth, during the refactor, to evaluate how NDimage could be supportive for auto-parallelization? I?m thinking that it somehow would be able to split off into embarrassingly parallel n tasks, if thrown to a n-core machine? I?m sorry if I talk non-sense, I?m just fighting to get GLCM faster, when running it via ?generic_filter? over large-ish images, so far not successful, even trying to use numba, but as many things are already running in Cython, so I guess I can?t expect much auto-improvements. ;) So, I?m anticipating to have to go to a cluster for my hundreds of images I want to run multiple/many GLCM analyses on. Thanks again for the developer docs, they are great! Regards, Michael > On Jun 27, 2017, at 09:06, Stefan van der Walt wrote: > > On Tue, Jun 27, 2017, at 07:49, Egor Panfilov wrote: >> - Not sure that I'll find enough time to contribute to the code by myself, but it won't harm if you could provide to the public some directions on where to start with `scipy.ndimage` C-code. > > Making ndimage developer notes along the way would be extremely helpful! > > St?fan > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image From jni.soma at gmail.com Tue Jun 27 23:56:29 2017 From: jni.soma at gmail.com (Juan Nunez-Iglesias) Date: Wed, 28 Jun 2017 13:56:29 +1000 Subject: [scikit-image] Refactoring ndimage In-Reply-To: <5E790BA3-D490-415F-9A2F-2D0E78D5309E@gmail.com> References: <1498575971.2156294.1022936256.002CC20A@webmail.messagingengine.com> <5E790BA3-D490-415F-9A2F-2D0E78D5309E@gmail.com> Message-ID: <5c59c690-268c-409d-86d9-a12a770c75aa@Spark> Hey Michael, When using generic filter, the function call overhead is huge. Are you using LowLevelCallable? I presume that is a significant bottleneck. After you?ve done that, assuming LLC allows release of the GIL, you can use the dask-based skimage.util.apply_parallel to parallelise your code. HTH! At any rate, feel free to post more details about your problem in a new thread! =) Juan. On 28 Jun 2017, 7:11 AM +1000, K.-Michael Aye , wrote: > Awesome effort! ;) > > Is it maybe worth, during the refactor, to evaluate how NDimage could be supportive for auto-parallelization? > I?m thinking that it somehow would be able to split off into embarrassingly parallel n tasks, if thrown to a n-core machine? > > I?m sorry if I talk non-sense, I?m just fighting to get GLCM faster, when running it via ?generic_filter? over large-ish images, so far not successful, even trying to use numba, but as many things are already running in Cython, so I guess I can?t expect much auto-improvements. ;) > > So, I?m anticipating to have to go to a cluster for my hundreds of images I want to run multiple/many GLCM analyses on. > > Thanks again for the developer docs, they are great! > > Regards, > Michael > > > > On Jun 27, 2017, at 09:06, Stefan van der Walt wrote: > > > > On Tue, Jun 27, 2017, at 07:49, Egor Panfilov wrote: > > > - Not sure that I'll find enough time to contribute to the code by myself, but it won't harm if you could provide to the public some directions on where to start with `scipy.ndimage` C-code. > > > > Making ndimage developer notes along the way would be extremely helpful! > > > > St?fan > > > > _______________________________________________ > > scikit-image mailing list > > scikit-image at python.org > > https://mail.python.org/mailman/listinfo/scikit-image > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image -------------- next part -------------- An HTML attachment was scrubbed... URL: From jni.soma at gmail.com Wed Jun 28 06:27:00 2017 From: jni.soma at gmail.com (Juan Nunez-Iglesias) Date: Wed, 28 Jun 2017 20:27:00 +1000 Subject: [scikit-image] Parallel processing segmentation while keeping labels In-Reply-To: References: Message-ID: <99e57691-6899-4273-8fa3-a831247bfcbc@Spark> Hi Cedric, Stitching of separate regions is not a trivial problem? You?ll basically have to: a) overlap the blocks by a certain amount. You might be able to use skimage.util.apply_parallel more easily here than joblib. b) compute which labels overlap the most between each neighbouring pair of images c) relabel as necessary to make those labels match It?s not super-hard, just a lot of annoying bookkeeping. If you come up with a reasonably robust method to do this, I for one would very much welcome such a contribution into the library! Here?s a paper from an old colleague of mine who had to deal this on a large-scale problem, and they created a robust method to do the matching: https://arxiv.org/pdf/1604.00385.pdf (page 6) Juan. On 27 Jun 2017, 9:20 AM +1000, Cedric Espenel , wrote: > Hi, > > I'm working on a project where I have to segment out nucleus of cells in a volume. I use random_walker with define markers for every nuclei. If I try to run it on the all volume the segmentation works well but it's very slow. So I used util.view_as_blocks function from scikit to split my image and markers and I loop over the different block using joblib: > > > rw_dapi_chunks = Parallel(n_jobs = 4)(delayed(segmentation.random_walker)(chunks[i,j], > > ???????????????????????????????????? chunks_markers[i,j], beta = 3000, mode='cg_mg') for > > ????????????????????????????????????? i in range(2) for j in range(2)) > > So I end up with a list of 4 images and if I combine these images (btw I'm not sure what is the best way for doing that? I just add them up in an empty array) everything work well, except that I end-up with nuclei with 2 different labels: > > > Am I doing something wrong? Is there a way to split your images in block for parallel computing but being able to get the labeling right at the end? > > Best, > > Cedric > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image.png Type: image/png Size: 24856 bytes Desc: not available URL: From cedric.espenel at gmail.com Wed Jun 28 18:37:54 2017 From: cedric.espenel at gmail.com (Cedric Espenel) Date: Wed, 28 Jun 2017 15:37:54 -0700 Subject: [scikit-image] Parallel processing segmentation while keeping labels In-Reply-To: <99e57691-6899-4273-8fa3-a831247bfcbc@Spark> References: <99e57691-6899-4273-8fa3-a831247bfcbc@Spark> Message-ID: Hi Juan, Thank you for your answer, I kind of do what you propose, although it's not very "elegant": 1) Using util.view_as_windows(), I make chunks with overlay. 2) jolib for parallel processing (I'd like to use skimage.util.apply_parallel but I'm not sure how I can use a fonction with more than 1 arg?) 3) this part is a little "bricolage", I take the overlap of adjacent regions and, using regionprops, I can find the "intensity" (label) of 1 region over the other one. Then I just relabel one of the region. 4) I stitch the block back together, again, it's not pretty, I just add up all the regions into a new array, not sure if there is a better way. So it works well and it's relatively easy to implement because I only have 4 chunks, I've to see how that will go for a big tile of images. Best, Cedric 2017-06-28 3:27 GMT-07:00 Juan Nunez-Iglesias : > Hi Cedric, > > Stitching of separate regions is not a trivial problem? You?ll basically > have to: > > a) overlap the blocks by a certain amount. You might be able to use > skimage.util.apply_parallel more easily here than joblib. > b) compute which labels overlap the most between each neighbouring pair of > images > c) relabel as necessary to make those labels match > > It?s not super-hard, just a lot of annoying bookkeeping. If you come up > with a reasonably robust method to do this, I for one would very much > welcome such a contribution into the library! > > Here?s a paper from an old colleague of mine who had to deal this on a > large-scale problem, and they created a robust method to do the matching: > https://arxiv.org/pdf/1604.00385.pdf > (page 6) > > Juan. > > On 27 Jun 2017, 9:20 AM +1000, Cedric Espenel , > wrote: > > Hi, > > I'm working on a project where I have to segment out nucleus of cells in a > volume. I use random_walker with define markers for every nuclei. If I try > to run it on the all volume the segmentation works well but it's very slow. > So I used util.view_as_blocks function from scikit to split my image and > markers and I loop over the different block using joblib: > > rw_dapi_chunks = Parallel(n_jobs = 4)(delayed(segmentation. > random_walker)(chunks[i,j], > chunks_markers[i,j], beta = 3000, > mode='cg_mg') for > i in range(2) for j in range(2)) > > > So I end up with a list of 4 images and if I combine these images (btw I'm > not sure what is the best way for doing that? I just add them up in an > empty array) everything work well, except that I end-up with nuclei with 2 > different labels: > > [image: Images int?gr?es 1] > Am I doing something wrong? Is there a way to split your images in block > for parallel computing but being able to get the labeling right at the end? > > Best, > > Cedric > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image.png Type: image/png Size: 24856 bytes Desc: not available URL: From imagepy at sina.com Fri Jun 30 04:46:59 2017 From: imagepy at sina.com (imagepy at sina.com) Date: Fri, 30 Jun 2017 16:46:59 +0800 Subject: [scikit-image] building scikit-image plugin and tool set. Message-ID: <20170630084659.EBA7AC8073E@webmail.sinamail.sina.com.cn> Hi everyone: In the past half year, I am working on a project ImagePy. I had communicated with several expert here privately, and got many advice. It is a plugin Frame work just like ImageJ, which can wrap any numpy based library. I had reconstructed it many a time, Up to now, It still has many bug, But it is right in general orientation. Now I think It is time to build a project named skimg-plgs. And I had wrote some presentative demo with friendly interact. these demo are all from the gallery, (interactive snake contours, interactive watershed...) I want to build a full plugin system and tool set covering scikit-image's every module. Then we can build a large user community like ImageJ, not only programers but also the doctors and biologists. I wrote this email to ask some advice, and If anyone agree with this opinion, If it's OK, Let's start! Best regardsYXDragon -------------- next part -------------- An HTML attachment was scrubbed... URL: From vighneshbirodkar at gmail.com Fri Jun 30 11:49:05 2017 From: vighneshbirodkar at gmail.com (Vighnesh Birodkar) Date: Fri, 30 Jun 2017 11:49:05 -0400 Subject: [scikit-image] Techniques for Aligning images to GIS data Message-ID: Hello Has anyone here worked with satellite images before ? I am dealing with the problem of aligning satellite images to GIS data which can be off by upto 15pixels. Could someone point me to good literature to read on the topic ? Thanks Vighnesh -------------- next part -------------- An HTML attachment was scrubbed... URL: From omer.ozak at gmail.com Fri Jun 30 11:59:22 2017 From: omer.ozak at gmail.com (=?utf-8?Q?=C3=96mer_=C3=96zak?=) Date: Fri, 30 Jun 2017 10:59:22 -0500 Subject: [scikit-image] Techniques for Aligning images to GIS data In-Reply-To: References: Message-ID: Hi Vigresh, Not sure what you're proven is exactly but you can try Geoandas and Georasters which are socialized packages for GIS. Best, ?mer Sent from my mobile Please excuse any typos > On Jun 30, 2017, at 10:49 AM, Vighnesh Birodkar wrote: > > Hello > > Has anyone here worked with satellite images before ? I am dealing with the problem of aligning satellite images to GIS data which can be off by upto 15pixels. Could someone point me to good literature to read on the topic ? > > Thanks > Vighnesh > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image From kmichael.aye at gmail.com Fri Jun 30 12:03:11 2017 From: kmichael.aye at gmail.com (K.-Michael Aye) Date: Fri, 30 Jun 2017 10:03:11 -0600 Subject: [scikit-image] Techniques for Aligning images to GIS data In-Reply-To: References: Message-ID: <007A1247-233E-42B9-AC82-CE93AE9311C5@gmail.com> I don?t know your status of knowledge, so I apologize if I state the obvious. Your issue is that of the co-registration of images. You have to always decide what your ?prime? or ?truth? is. How was your ?GIS? data precisely located? How do you know it?s not that which is off? (Even so, if you have ?ground truth? measurements, they are usually more precisely located than remote sensing data. Are the satellite images ?map-projected? ? If so, against what ground truth was that projection performed? What geographical coordinate system of Earth was used for the map projection? This stackexchange might help. There are a bazillion books out there for that, don?t really have a recommendation, mostly learned my stuff by internet searches. ;) HTH, Michael > On Jun 30, 2017, at 09:49, Vighnesh Birodkar wrote: > > Hello > > Has anyone here worked with satellite images before ? I am dealing with the problem of aligning satellite images to GIS data which can be off by upto 15pixels. Could someone point me to good literature to read on the topic ? > > Thanks > Vighnesh > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image From kmichael.aye at gmail.com Fri Jun 30 12:04:01 2017 From: kmichael.aye at gmail.com (K.-Michael Aye) Date: Fri, 30 Jun 2017 10:04:01 -0600 Subject: [scikit-image] Techniques for Aligning images to GIS data In-Reply-To: <007A1247-233E-42B9-AC82-CE93AE9311C5@gmail.com> References: <007A1247-233E-42B9-AC82-CE93AE9311C5@gmail.com> Message-ID: <53F2C3AA-2703-4CAA-8895-30DD483C5F9E@gmail.com> Errm, forgot the link: https://gis.stackexchange.com/questions/664/whats-the-difference-between-a-projection-and-a-datum > On Jun 30, 2017, at 10:03, K.-Michael Aye wrote: > > I don?t know your status of knowledge, so I apologize if I state the obvious. > > Your issue is that of the co-registration of images. > > You have to always decide what your ?prime? or ?truth? is. How was your ?GIS? data precisely located? How do you know it?s not that which is off? (Even so, if you have ?ground truth? measurements, they are usually more precisely located than remote sensing data. > > Are the satellite images ?map-projected? ? If so, against what ground truth was that projection performed? What geographical coordinate system of Earth was used for the map projection? > > This stackexchange might help. > > There are a bazillion books out there for that, don?t really have a recommendation, mostly learned my stuff by internet searches. ;) > > HTH, > Michael > > >> On Jun 30, 2017, at 09:49, Vighnesh Birodkar wrote: >> >> Hello >> >> Has anyone here worked with satellite images before ? I am dealing with the problem of aligning satellite images to GIS data which can be off by upto 15pixels. Could someone point me to good literature to read on the topic ? >> >> Thanks >> Vighnesh >> _______________________________________________ >> scikit-image mailing list >> scikit-image at python.org >> https://mail.python.org/mailman/listinfo/scikit-image > -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefanv at berkeley.edu Fri Jun 30 13:48:27 2017 From: stefanv at berkeley.edu (Stefan van der Walt) Date: Fri, 30 Jun 2017 10:48:27 -0700 Subject: [scikit-image] building scikit-image plugin and tool set. In-Reply-To: <20170630084659.EBA7AC8073E@webmail.sinamail.sina.com.cn> References: <20170630084659.EBA7AC8073E@webmail.sinamail.sina.com.cn> Message-ID: <1498844907.3884730.1026750560.2605EE1F@webmail.messagingengine.com> Hi, YXDragon On Fri, Jun 30, 2017, at 01:46, imagepy at sina.com wrote: > Now I think It is time to build a project named skimg-plgs[1]. > And I had wrote some presentative demo[2] with friendly interact. > these demo are all from the gallery, (interactive snake contours, > interactive watershed...) I want to build a full plugin system > and tool set covering scikit-image's every module. Then we can > build a large user community like ImageJ, not only programers but > also the doctors and biologists. Given the immense success of projects such as ImageJ, and based on feedback I've received from practitioners in microscopy, there is certainly a market for a GUI built on top of scikit-image. I don't personally have the time to contribute to such an effort at the moment (my focus is probably best spent keeping skimage on track!), but I am appreciative of the work you are doing, and encourage you to continue. I may have mentioned this to you before, but I am not sure about the long- term viability of WXPython. I heard that they have a Phoenix rewrite underway, but looking at the latest PyPI release (https://pypi.python.org/pypi/wxPython/4.0.0a1) they also only support Windows and MacOS. With a Jupyter Lab release imminent, I would strongly consider using the web as UI, and building components that integrate with that project. I can put you in contact with their developers, if you like. Best regards St?fan Links: 1. https://github.com/Image-Py/skimg-plgs 2. https://github.com/Image-Py/skimg-plgs -------------- next part -------------- An HTML attachment was scrubbed... URL: From lidongyao.br at gmail.com Fri Jun 30 15:39:50 2017 From: lidongyao.br at gmail.com (Dongyao Li) Date: Fri, 30 Jun 2017 12:39:50 -0700 Subject: [scikit-image] building scikit-image plugin and tool set. In-Reply-To: <1498844907.3884730.1026750560.2605EE1F@webmail.messagingengine.com> References: <20170630084659.EBA7AC8073E@webmail.sinamail.sina.com.cn> <1498844907.3884730.1026750560.2605EE1F@webmail.messagingengine.com> Message-ID: Hi YXDragon and Stefan: I am a process engineer in semiconductor industry. I wrote a SEM/STEM/TEM analysis software with UI based on scikit-image, pyqt, and others, using the concept of plugins. I agree with Stefan's point that there is a market for this. However my experience is that the images from scientific instruments like SEM/STEM/TEM/MRI are quite different with images from cameras. And people in semiconductor industry and people working on biology have very different needs. I feel like the focus right now is mostly on the biology community. I am very happy to hear that we can possibly build a web-based UI for image analysis now. It will integrate the image analysis and further data analysis greatly, which is the our future direction. It would be great if scikit-image could include some demo of it in the future, just like the "viewer" package skimage has right now. Best, Dongyao On Fri, Jun 30, 2017 at 10:48 AM, Stefan van der Walt wrote: > Hi, YXDragon > > On Fri, Jun 30, 2017, at 01:46, imagepy at sina.com wrote: > > Now I think It is time to build a project named skimg-plgs > . And I had wrote some > presentative demo with friendly > interact. these demo are all from the gallery, (interactive snake contours, > interactive watershed...) I want to build a full plugin system and tool set > covering scikit-image's every module. Then we can build a large user > community like ImageJ, not only programers but also the doctors and > biologists. > > > Given the immense success of projects such as ImageJ, and based on > feedback I've received from practitioners in microscopy, there is certainly > a market for a GUI built on top of scikit-image. > > I don't personally have the time to contribute to such an effort at the > moment (my focus is probably best spent keeping skimage on track!), but I > am appreciative of the work you are doing, and encourage you to continue. > > I may have mentioned this to you before, but I am not sure about the > long-term viability of WXPython. I heard that they have a Phoenix rewrite > underway, but looking at the latest PyPI release ( > https://pypi.python.org/pypi/wxPython/4.0.0a1) they also only support > Windows and MacOS. > > With a Jupyter Lab release imminent, I would strongly consider using the > web as UI, and building components that integrate with that project. I can > put you in contact with their developers, if you like. > > Best regards > St?fan > > > _______________________________________________ > scikit-image mailing list > scikit-image at python.org > https://mail.python.org/mailman/listinfo/scikit-image > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From imagepy at sina.com Fri Jun 30 21:13:28 2017 From: imagepy at sina.com (imagepy at sina.com) Date: Sat, 01 Jul 2017 09:13:28 +0800 Subject: [scikit-image] =?gbk?b?u9i4tKO6UmU6ICBidWlsZGluZyBzY2lraXQtaW1h?= =?gbk?q?ge_plugin_and_tool_set=2E?= Message-ID: <20170701011328.7CD0EC800B0@webmail.sinamail.sina.com.cn> Hi Stefan and Dongyao: I think the most difference between camera image, semiconductor industry and biology is the image format, and some specific algrism, As a plugin system, we just need to build general environment, supporting Numpy(uint8, int16, float32, float64), and some common mark(lookup table, scale ruler). about the difference, Developer in different fields can wrote their own reader plugins(such as pydicom). bwt:I do not appreciate integrate ui and plugins in scikit-image, scikit-image should be pure a processing library. About the ui, wxPhoenix has support Py2, Py3, on Win, Mac ,Linux. You can find Linux whl here and will be avalible in pypi soon. (In fact I had tested ImagePy on win, mac, linux with py2/py3) I think QT and WX are both OK, but wx is more light weighted (just 10M on win), It is friendly for user to download. I also agree with That web is the best choice. But I have no energy to do it myself, I am not good at web, js, I just see the image show and parameter adjust in Jupyter's demo (but the most difficult is to edit the roi line, curve, circle, and polygon, edit the node, sometimes with holes). I would be very happy If I can get contact with their developer! BestYXDragon ----- ???? ----- ????Dongyao Li ????"Mailing list for scikit-image (http://scikit-image.org)" ???Re: [scikit-image] building scikit-image plugin and tool set. ???2017?07?01? 03?40? Hi YXDragon and Stefan: I am a process engineer in semiconductor industry. I wrote a SEM/STEM/TEM analysis software with UI based on scikit-image, pyqt, and others, using the concept of plugins. I agree with Stefan's point that there is a market for this. However my experience is that the images from scientific instruments like SEM/STEM/TEM/MRI are quite different with images from cameras. And people in semiconductor industry and people working on biology have very different needs. I feel like the focus right now is mostly on the biology community. I am very happy to hear that we can possibly build a web-based UI for image analysis now. It will integrate the image analysis and further data analysis greatly, which is the our future direction. It would be great if scikit-image could include some demo of it in the future, just like the "viewer" package skimage has right now. Best,Dongyao On Fri, Jun 30, 2017 at 10:48 AM, Stefan van der Walt wrote: Hi, YXDragon On Fri, Jun 30, 2017, at 01:46, imagepy at sina.com wrote: Now I think It is time to build a project named skimg-plgs. And I had wrote some presentative demo with friendly interact. these demo are all from the gallery, (interactive snake contours, interactive watershed...) I want to build a full plugin system and tool set covering scikit-image's every module. Then we can build a large user community like ImageJ, not only programers but also the doctors and biologists. Given the immense success of projects such as ImageJ, and based on feedback I've received from practitioners in microscopy, there is certainly a market for a GUI built on top of scikit-image. I don't personally have the time to contribute to such an effort at the moment (my focus is probably best spent keeping skimage on track!), but I am appreciative of the work you are doing, and encourage you to continue. I may have mentioned this to you before, but I am not sure about the long-term viability of WXPython. I heard that they have a Phoenix rewrite underway, but looking at the latest PyPI release (https://pypi.python.org/pypi/wxPython/4.0.0a1) they also only support Windows and MacOS. With a Jupyter Lab release imminent, I would strongly consider using the web as UI, and building components that integrate with that project. I can put you in contact with their developers, if you like. Best regards St?fan _______________________________________________ scikit-image mailing list scikit-image at python.org https://mail.python.org/mailman/listinfo/scikit-image _______________________________________________ scikit-image mailing list scikit-image at python.org https://mail.python.org/mailman/listinfo/scikit-image -------------- next part -------------- An HTML attachment was scrubbed... URL: