 So I was saying that I'm a PhD student and I'm a PhD student and I did this work on computerized tomography. Do you know about it? Yeah. Do you know the technique? Yes. I think, especially for medical issues and so I can introduce briefly the work and then we can pass to questions. Basically computerized tomography is this technique to which we scan an object with its rays and the object is attenuating the energy of the rays depending on the interest factor, depending on the density of the rays, and the tomography machine detects the energy of the solution. So I was saying that there is an air-construction algorithm that processes the data and exhausts the image of the section of the body without cutting it. Okay, so this is tomography and this work is not about the reconstruction algorithm, but in this work we provide a library called ExactSignal that is a tool for the testing of reconstruction algorithms. In particular, when testing the reconstruction algorithm, we don't use any real body. So the testing of reconstruction algorithm is based on the superfan concept that I put in the poster. Okay. I was saying, I was speaking about phantom, do you know the concept of phantom? No, so you're doing some sort of inverse scattering. Yes, so the phantom is a tissues image that allows us to build a tissues datum, which is the synogram. Basically, we don't use any real body to test the algorithm, the reconstruction algorithm, and we use this image with very simple figures such as ellipses or polygonal figures. And then we apply the radon transform that gives us the synogram. So we do a projection of the phantom through the radon transform, which is defined, which is a mathematical tool, is the line integral. Okay. So you have two imaging that we scan the phantom with different angles, theta, and with rays that are represented by the parameter T. And then we compute the projection along the line, which is individuated by these two parameters T and theta. So we scan, we do this projection along these lines, which represent the rays. And the representation of this projection is the synogram, which is this graph. And using the phantom and the radon transform allow us to mimic the tomography experiment without doing it. Yeah. Okay. So the synogram represents the data that we would collect with tomography machine. So RF is the data and you're trying to infer? Yes. In this data, so we have a datum, which is built a dock for our purpose. And our, so you can use the radon function that she learned provides. Yeah. But, yeah, but since we speak about integrals, we using that lead to have an approximated synogram. Okay. Because numerical techniques for doing integrals obviously introduce an error and numerical error. Our library, which is the exact synogram compute an analytical radon transform. So we implement an approach which is analytical. So we, our datum is exact in the sense that we are not computing the integral, but we reach the value of the radon with another method. So without using the integral, I don't know if this could be clear because we must go deeper. But basically using figures that have an equation, for example, it allows us to find the value of the radon transform in analytical way. So we will reach these values keeping the computation of the integral. Okay. So you're actually trying to do the thought you're actually trying to do the thought problem. Yes. Yeah. In this particular work, you're not trying to get F out of RF. You're trying to get RF out of F. Sorry. I don't really understand. You're given F and F is the left diagram, right? So F is the attenuation function because the phantom I'm showing here is the representation of how the body attenuates the ways. Yes. And the scope of the medical imaging reconstruction is to reconstruct this image. Yeah. So getting back the function F starting from the synogram. Yes. But in this work that you're doing right now, you're trying to find the synogram given the function. Yes. Yes. So we built the phantom. So we built this library which is provided with the class called phantom that contains not only some special phantoms we elaborated but also their analytical radon. And this library can be useful for someone that is testing the reconstruction algorithm because starting from an exact datum is as an advantage because the datum has new noise. So in a certain sense we remove sort of bias that... Yeah. So that they can focus... So that the person doing the inverse transform can focus on inverse transform and not worry about the forward transform being correct. Yes. Yes. So they know that's the data they get which is the transformed function. Yes. All inaccuracies. So the final error we get after applying the reconstruction algorithm is only due to the algorithm itself and we cannot... we can keep caring about noise in the data or error in measurement. Yeah. Oh, that's cool. Yeah. Let's start and find those... That's cool. Okay. We estimate error with the two norm. So the error is made... Okay. It's not super size but even with this little estimate we can appreciate a little improvement Can you zoom in please? Yes, please. Yeah. Thank you. Okay. Yes. Here there is an error because... so I can explain you. Yes. This is the code. It's quite simple. I can show you also tutorial of the code but basically in the code you can choose the pattern type. So we have Lipsy's shape logon, a modified shape logon or maybe squares or rectangles. These are the patterns we built. Yeah. And we can choose the resolution of the image. So in this parameter endpoint, number of pixels and okay. Then we save the phantom. So we have the class at the instance of the class and we put it in phm. And then calling this method of the class, which is getPhantom, we get effectively the phantom associated to the resolution and the type we choose. So in P we have our phantom. And then in analytical synogram through the method getSynogram, we put the datum, the analytical datum, related to the phantom. Okay. And then we invert this datum through the iradun. So basically to test our library, we use the iradun, which is the inverse radun. So this is the special choice for the reconstruction algorithm to test the validity of our library. So we choose iradun and iradun gives us the reconstructed image of the phantom. And we call it piano because it's analytical. So clever. So you're using, so you're using how accurate their inverse transform is. Yes. To work out how good your forward transform is. Yes. Nice. So yes, for reconstruction algorithm, I, okay, I knew that there are types of reconstruction algorithm. So basically there is the ones based on filter back projection. I don't know if you do, if you know something. Did you say orthogonal projection? Filter back projection. No, okay. So basically with radun, we do the projection of the image. And then to reconstruct the image, we have to do a sort of back projection. Okay. Based on analysis itself. Okay. I do not go deep. Okay. And then there are iterative methods, but the iradun is a function of psychic learner. And we apply this one. Okay. And in a proxy scenario. We put the approximated scenario. Okay. That we find applying the radun of the psychic learner. So psychic learners providing radun transform, which is done with interpolation. So numerical techniques of integration. And the, the scenogram that gives radun is approximated. And we compare our, our phantom, which is the analytical with the approximated one. I don't know if it's clear. So we have an initial phantom, we can do two pins. So applying our radun, which is analytical, or radun of the psychic learner. We did these two things. Yeah. And then we apply iradun to all of the two. Yes, all of the two scenograms. Yes. Okay. So we, we get, we got that our, our approach gives any announcement in the error, in the error of the final reconstructed image. A better error than that. Yes. A smaller error in this table, you can see that the error evaluated on our reconstructed for all the force for types of phantom gives an error. That is smaller, even if from with a small percentage is a small, then the one we get with the default functions of the psychic. How sensitive is it to, oh, let's go. Yeah. How sensitive is it to, to, sorry, sorry. How sensitive is it to shape, to the shapes that you put in. So like real bodies won't be just, real bodies won't be just f equals zero or one. And they won't be nice. Oh, sorry. I didn't understand the point. Yeah. So your phantom function, your phantom, if you go up with it. Yeah. The phantom is. Yeah, go to the picture. Yeah. So that's like the function is the f is either zero or one, right? Yes. Yeah. So the black is zero and white is one. So basically when we have black, there is anything. So error. Yeah. And when we have white, there is bone, for example, it could be a representation of brain or a summary of a bone. Yes. So I noticed that's the shapes in that's the ellipses and also rectangles. You said they're all convex shapes, for example. And this is also, it's also like piecewise, piecewise constant. Yes. Do you know how sensitive. Yeah. Do you know how sensitive your, your trans transforms are to weird, weird non-convex behavior? Oh, I don't know exactly, but maybe you refer to the Gibbs phenomenon. We started the Gibbs phenomenon. But we, we saw that along the discontinuities of the figure, the error is spreading up and this seems to be a common, a common picture because yes, the function of the, yes, the f function, which is definition is discontinuous. And we are approximating it with the continuous function. Yes. So along the end, since we involve also Fourier transform and its inverse. Yeah. Yeah. Yes. There are phenomenons associated to the rotation of the series, the Fourier series. And yes, considering much more terms of the series can have been made to be the fact because we would go much more close to the discontinuities. But in fact, we, in our error, in our evaluation of the error, we put a mask along the discontinuities of the figure. You put a mask. A mask. You can say, yes, a mask. I see you just say we ignore the few pixels. Yeah. Yes. Basically, we didn't consider the contour and some, a little region around the contours as we got the error. So they don't contribute to the error because the error along the discontinuities would be too large and is a common phenomenon. And so to evaluate the announcement of our approach, we must, how can I say, we must, yes. Yeah. Yeah. So if you took an F that wasn't discontinued, if you took an F that is continuous and nice and smooth and everything. Do you think the error comparisons between the two radon transforms, do you think? Yes, would be better. Yes. Do you think, so would it help that, would it help their radon transform, for example? Okay. So could it be that their radon transform is just tripping up over the discontinuities? Yes. Yes. I think it would be better, but I don't really imagine an affirmation function which can be continuous. So I think it's not appropriate. Because, yes, if we think about the body, which has different parts inside. Okay. Yes. Because the attenuation depends on the body. Yes. Yeah. Okay. I was thinking about the body, which is not homogeneous and maybe. Yes. If your attenuation function was continuous, then you have taken things to worry about. No. Yes. The, the announcement or would. No, no. That makes sense. That makes sense. So. Yes. Because I remember something. Yes. I think that could be also simpler. The reconstruction algorithm. Because I remember that the problem. Yes. Was along the discontinuities. And, for example, there was the back projection, which is. Yes. Basically, because of these discontinuities, we must use the filter at that projection. So this filter. That attenuates high frequencies. Due to these. This. If that is continuous. It's all much more simpler and. Yes. The, the announcement of the library would be. Much more pronounced. Yes. This is the, the worst case that we can see this. So we, we eat enough. That we have an integrable function. An absolute integrable function. And. Okay. If it's, it is much more. Regular. Yeah. Yeah. Yeah. Just. Okay. Okay. Yes. This is my quantum. Okay. We provide the. The library. Is the fault. Gallery of. Phantoms and then there are two methods of the class. One for the phantoms and one for. For building the senior grandpa. And okay. These are some references. I can show you the tutorial. If you don't, don't have any other questions. So. Tutorial. Okay. Pretty cool. Okay. So here we call some. Okay. Okay. So we've got some tools and library. We need the. This is. So basically is used to detect. The. The discontinuities. Binary delay. Doing them. For applying the mask. So once we. We detect the discontinuities. We enlarge a bit. The interval. To be sure that the mask. Over. The discontinuities. Errors. And then. Okay. This is the starting point of the tutorial. So here we can choose the phantom type. Which can be. Maybe we can try squares. And. Okay. And which is the resolution. And here we. We store the phantom. Okay. Okay. Yes. Here we can add. As input. Also a message. So. Okay. So. Okay. So. Okay. Okay. Okay. Okay. Okay. Okay. Okay. So. To put the whole summer. Because. Basically phantom is a matrix. Is. Conceived. At the beginning. As a metrics of values of the parameters. Of the figures that. We want. In the front. For example, we want. You can in aging. No, no, no. No. No. So, in the front, there are, for example, five squares. So a square is represented by five parameters, the two coordinates of the center point, length of the side, the angle of rotation, yeah. And basically you can build a matrix in which the rows are represent the parameters of one square. So each row is related to one square. And then we can put these metrics as input of this function and we can build our own quantum. So we provide a gallery of the full quantum, but if you want, you define here a metrics with the parameters we want and then we put the metrics inside this function. Yeah, so you're basically, basically it's kind of like vector, it's kind of like vector graphics and sort of raster. Okay, yeah. Well, obviously in real applications it would be a raster image. In real applications it would be a raster image, I assume. Okay, this is the function, the initial function. Then we compute the synogram, the analytical synogram and the approximated one. So we have the analytically approximated. So is the computing, it's a bit slow. Oh, yes, I understand it because the, yes, number of points should be equal to the number of, yes, to this, no, but this is, basically the number of pixels should be, no, the contrary, the number of rays we use should be equal to the number of pixels. But the algorithm do it by, I don't know why, it's so slow. Okay, I don't know why. I don't understand the sobel, sobel transform thing. Why is it so slow now? So for the sobel transform you're kind of smoothing before you take the kind of the gradients. Yeah. Yes. Yes. Sorry, you're breaking off the vlog. Okay, so we, I don't know why. Sorry, can't hear you. There's a noise. Yes. Sorry, can't hear you again. Yes, but it's very quiet. Okay, so maybe then our analysis. What's the y-axis? What's the vertical axis? Yeah, t is the parameter that. Sorry. Yeah. Yeah. Okay. Yeah. Okay. For each theta, so for each angle, there are a range, we, I'm going to say we, each range we stand is individuated by t. Yes, our polar coordinates are in few words. Radio polar. Yes, polar. So for each theta we have t, which is the distance the origin of the reference, we can say. Yeah. So each t individuates a line, the line of a ray, of a particular ray. Yeah. Yeah. Yeah. Okay. Yeah. Okay. Yes. This is the difference between the reconstructed image and the initial phantom by the radon of the sticky plurna, side plurna. And this is the difference between our reconstructed phantom and the initial one. And we can see that the error is concentrated along the discontinuities. Yeah. The far contours of the figure. So in fact, if we don't put the mask, so K is zero, it's representing the mask. So if we consider the contour, we don't see the enhancement of our ideal plan because we have an error, which is greater than the one of the radon of the sticky plurna. But if we take into account the kid's phenomenon, putting this parameter to a value different from zero, we have denouncement, because yes, a little one, but okay, it's a second point. Maybe the error analysis should be made in more detail. It was this. Yes. It is to see the mask. Basically, yes. Okay. Here is not so visible, but yes, this contour should be white. Okay. The mask here is not working really well because we should hide all of the white because it's the discontinuity. So we can enlarge the mask with this parameter. We should put three, four or something like that because this parameter enlarges, so do the dilation of the mask. Okay. This is the brief tutorial. For applications, isn't it the case that the discontinuities are what you most care about then? Because if you're thinking about muscle going to bone, isn't it quite important that you know exactly where the discontinuities are? Yes. So you are saying that, for example, I don't know. Okay. You mean in real application, we don't know where are the discontinuities? Yeah. Surely you're going to be quite interested in where those discontinuities are. So you could have a really good match. I don't know. You could have a really good match in continuous regions. But if you're worse at discontinuities. Yeah. But this step we are done is to be sure that we test the reconstruction algorithm well. So I think that if we would apply once, so yes, once we compare the two different algorithms using our library, we are sure that we are comparing the right things. Yeah. When you do the backwards. Yes. So we are sure that what we are doing is the best that we can do. I don't know how to explain without caring about it. Yeah. I kind of see what you mean. And we can do. Yeah. You want to get, you want to, essentially you want to evaluate the backwards transforms based on your forwards transform run and based on their forwards transform run. Yes. Yes. At this stage, we can use really simple figures. And it's better to use the simplest because in this way, we can individuate the discontinuities in a perfect way. And we test our package. Yeah. Yes. That's pretty cool. There's loads of people doing in those problems. Yeah. Yeah. The first step could be change. Yes. We tried to elaborate reconstruction algorithm. So test these on different reconstruction algorithms. And we were inspired by the algorithm. Okay. Then we decided to use the algorithm. But choosing the filter. Choosing Yes. The filter and Yes. Choosing the filter basically or the type of reconstruction algorithm we can comparing with different things and give much more I can say give much more value to our library. So because at this stage we used only the and another algorithm similar. But yes, this is a starting point. Okay. Maybe we have to we have Yes. It's quite late. But if you want, we can continue in the chat in the channel of the poster. If you have any questions. Let us know. It's good to see more. And what do you work about? So I was a PhD student in applied maths. Well, kind of fluid mechanics. I graduated last year and now I work in sound recognition. I'm a data engineer nowadays. I work with neural networks or something like that. Yeah. So I don't do machine learning myself. I do data engineering. Okay. Building up a data pipeline. Okay. I work on computation I did not do suspensions. I did try granular materials. Try granular flows. They're very cool. Yeah. Okay. Thank you very much. Sorry. What sort of things do you do with suspensions? Simulations. I use a software which is lamps. Do you know? Yep. I know lamps. We're like glow dynamics. Yes. I'm a developer for Mercury DPM and we like to bitch about lamps. Okay. Yes. We are an elaborating multi-scale model using this continuous galerking and molecular dynamics. These kind of lamps to get data and then... How did you come in to do this project then? Yes. With some colleagues. There was a researcher and I followed the course on medical imaging. Yes. It was a sort of a joke. It was born like a joke and we really enjoyed it. Okay. That's super cool. Yeah. Yeah. I'd love to talk sometime about suspensions, actually. That's maybe some other time. Yeah. Of course. I would like to... Yes. I am. We have to leave maybe the channel. Thank you very much, Johnny.