Hi Jérôme, Sounds great! I’ll admit that I’m not confident in this area either, but my reading of the documentation suggests that this is the right approach: the damping controls the square norm of x. By keeping it small (with large damping), you force the elements to be non-negative.
I hope the final picture looks good now! =) If you get a nice result, I suggest you write a blog post about it, with pictures. It sounds like a very cool use of SciPy, and would be a valuable addition to writeups about it! Juan. On 22 Nov 2017, 7:16 PM +1100, Jerome Kieffer <goo...@terre-adelie.org>, wrote: > On Wed, 22 Nov 2017 12:40:50 +1100 > Juan Nunez-Iglesias <jni.s...@gmail.com> wrote: > > > Hi Jérôme, > > > > Can you explain your problem more? You know A and x and want to find > > b? Is this an exact solution, or is Ax = b + err? SciPy’s > > sparse.linalg module is where you’ll find most of your answers, I > > think… If you want to *build* A from some description, you might find > > our homography example in Elegant SciPy useful: > > > Hi Juan, > > Thanks for your help. Nice documentation on scipy.sparse I wish I had > it a couple of days ago. > > Indeed I have spent a week in building the matrix > A using ray-tracing and now I believe it is almost correct now. > > The idea is to consider some image sensor (in 2D) which absorb the > photon (X-ray) in volume (instead of the surface). So each pixel is considered > as a voxel and the sensor is a 2D array of voxels. > After this raytracing step, I know how much of a photon arriving in one > pixel contributes to the neighboring pixels, this is my matrix A, > (in CSR format). > > "b" is of course the image I read from the detector, with all element > positive and I expect "x" to have all element positive as well. > > I tried to search in scipy.sparse.linalg the method which would allow > me to retrieve "x" from "b". For now, the best I found is : > > res = linalg.lsmr(A, b, damp=damp, x0=b) > > When the damping factor is null or too small, I notice many wiggles > (with negative regions) near peaks. For now I try to adjust this damp factor > so that the minimum of x is positive but I am not confident on the > method. > > -- > Jérôme Kieffer > tel +33 476 882 445 > _______________________________________________ > scikit-image mailing list > scikit-image@python.org > https://mail.python.org/mailman/listinfo/scikit-image
_______________________________________________ scikit-image mailing list scikit-image@python.org https://mail.python.org/mailman/listinfo/scikit-image