
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 <google@terre-adelie.org>, wrote:
On Wed, 22 Nov 2017 12:40:50 +1100 Juan Nunez-Iglesias <jni.soma@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