Sei sulla pagina 1di 17

An Investigation of Particle Image Velocimetry Techniques Applied to the Analysis of Wheel-Soil Interaction on Mars Terrain Simulant Mobolaji Akinpelu

Dr. Karl Iagnemma Department of Mechanical Engineering Massachusetts Institute of Technology Abstract In 2009, the wheel of the Mars Rover got stuck because there was not enough traction. The aim of this project is to create or modify software that will track Martian soil particle and show how the motion of the wheel affects the soil. The overall goal of the tasks described in this report is to investigate available PIV software for the above purpose and understand how to modify the parameters of the software, based on cross-correlation algorithm, to give the most accurate information on the motion of the soil. 1. Introduction After landing in January 2004 to probe the past geology and climate of Mars, in May 2009, the Mars Rover Spirit got stuck in soft Martian sand [1]. Attempts to get it out only drove it deeper [2]. In early 2011, the Mars Rover went through a particularly harsh Mars winter that sent it into hibernation while exposing the scientific and engineering equipments on board to damage. NASA scientists held out hope that after the passing of the winter, Spirit will get enough energy from the sun to recharge and resume communication with scientists and engineers on earth. But it did not. In May 2011, NASA abandoned efforts to resume communication with the Spirit Rover. Consequently, studying the interaction between the wheel of the Mars Rover and Martian soil has become an interesting and important problem, whose answer will help avoid future occurrences like the above. This project simulates the motion of a wheel of the Mars Rover on a Mars soil simulant. The simulation is used to understand the forces the wheel exerts on the soil and the movement and shearing pattern of the soil particles. The information from these experiments is vital for understanding the mechanical properties of Mars soil and the interaction between the soil and the wheel. The result of the study of these properties and interactions can be important for the design of future Mars rover wheels and motion mechanisms. 2. Problem Statement To track the motion of the particles of the soil, we plan to use publicly available Particle Image Velocimetry (PIV) software. However, a sampling of PIV software shows that they are made for particular applications like the study of fluid flow in biological and geological applications. Therefore, we had to conduct an analysis of the instrumentation requirements (camera frame rate and pixel resolution), software parameters (interrogation window size, degree of overlap of interrogation windows) and physical conditions

(lighting conditions and test rig container) and how to choose these variables so our PIV analysis gives accurate and useful data about the flow patterns in the soil. This analysis is important because it represents a preliminary study that will inform our choice of instruments, software parameters and physical conditions for our experiments. There have been attempts to conduct a more general analysis of the effects of choice of parameters on the accuracy of PIV results [4]. However, our approach differs from that of researchers like [4] because it is an investigation carried out for a specific application instead of an analysis of the structure and results of the cross-correlation algorithm that is the main feature in contemporary literature.

Figure 1: An artists rendering of the Mars Rover Spirit

Figure 2: The test-bed for our experiments

3. Methods In this section, we explain how PIV analysis works generally, how cross-correlation works, and how we created a statistical test based on our understand ing of our PIV and cross-correlation work. I. Particle Image Velocimetry Particle Image Velocimetry (PIV) is a technique used in experimental fluid mechanics to determine instantaneous velocity vector fields by measuring the displacements of numerous fine particles that accurately follow the motion of the fluid [3]. This velocity is measured by recording images of the particles at more than one precise time and deducing the displacement of the particles from the displacement of the image [3]. The steps in a PIV analysis are typically as follows: 1. A fluid is seeded with marker particles that refract, absorb or scatter light, have a high contrast with the rest of the fluid and do not interrupt the fluid flow. 2. Then the particles in the fluid flow are illuminated by pulsed sheets of light at exact time intervals and images of the illuminated particles are taken. 3. Next, the resulting images are processed with software that is based on algorithms like the cross-correlation algorithm. The analysis of the recorded images to measure the particles displacement is an important part of any fluid flow motion experiment. In particular, researchers have to make a choice on the technique, algorithm and software that gives them the most informed and accurate understanding of the dynamics of the fluid flow. For example, apart from PIV, there are other techniques for analyzing motion in a fluid like Laser Speckle Velocimetry (Fomin 1998), Scalar Image Velocimtry (Dahm et al 1992), and Image Correlation Velocimetry (Tokumaru and Dimotakis 1995) [3]. Compared with other velocity measurement techniques such as Laser Doppler Anemometry and Hot-Wire Anemometry, PIV offers many advantages for the study of fluid mechanics like revealing the global structure of complicated and/or unsteady flow field quantitatively (Adrian, 1991) - so it has been studied intensely and developed rapidly in the past two decades [4]. In our case, we started out applying Particle Tracking Velocimetry (PTV), a technique quite similar to PIV, to our fluid flow. One difference between PIV and PTV is that the algorithm that drives PTV attempts to track individual particles displacements to determine velocities, whereas in PIV, regions of flow are tracked. This feature of PTV implies that there has to be a low particle density in the regions of the flow that are being compared to determine the displacement to ensure that the software can recognize and track the individual particle elements from image frame to image frame [2]. This theoretical knowledge, our understanding of the physical properties of the Martian soil and a preliminary test of images of the soil with PTV software confirmed to us that PIV was a better choice than PTV.

Figure 3: Why we chose PIV over PTV

Figure 4: An outline of the PIV Steps

Figure 5: The Martian soil we are experimenting on

II.

Cross-Correlation

Cross-correlation is an example of an algorithm for processing images in a PIV analysis. PIV images are processed by sub-dividing two consecutive images of the flow into a regular grid of sub-areas that overlap and finding the velocity vector for each sub-area by an algorithm like cross-correlation. After obtaining the images for a PIV analysis as explained above, a small sub-area of the first image, usually called an interrogation area or interrogation window, is compared with a sub-area at the same location in the second image using cross- correlation [piv8]. This processing produces a table of correlation values over a range of displacements, and the overall displacement of particles in the window is represented by a peak in this correlation table. [5]. In other words, the process results in the most probable displace ment vector for that particular particle pattern. (Adrian 1991; Willert and Gharib 1991; Stamhuis and Videler 1995) [6]. The process is repeated for all interrogation areas of the pair of images to get a complete vector diagram of the flow. Errors in an analysis using cross-correlation occur mainly from insufficient data like a lack of imaged flow tracers or poor image quality, and/or from correlation abnormalities from unmatched tracer images in the correlated sample volume [5]. The cross-correlation algorithm is based on the cross-correlation function:
K L

RII ( x, y )
i Kj L

I (i, j ) I (i

x, j

y)

The variables I and I are the intensity values of the images where I is larger than the template I. Essentially the template I is linearly shifted around in the sample I without extending over edges of I . For each choice of sample shift (x, y), the sum of the products of all overlapping pixel intensities produces one cross-correlation value RII (x, y). By applying this operation for a range of shifts (M x +M,N y +N), a correlation plane the size of (2M + 1) (2N + 1) is formed. For shift values at which the samples particle images align with each other, the sum of the products of pixel intensities will be larger than elsewhere, resulting in a high cross-correlation value RII at this position. Essentially the cross-correlation function statistically measures the degree of match between the two samples for a given shift. The highest value in the correlation plane can then be used as a direct estimate of the particle image displacement [7]. One can imagine this procedure as moving I over I until the best matching is found. The expression best matching is used because in practice there is never a 100% matching due to particles that have left or entered the imaged area in the second image compared with the first [6].

Figure 6: Example of the formation of the correlation plane by direct cross-correlation: here a 4 X 4 pixel template is correlated with a larger 8 X 8 pixel sample to produce a 5 X 5 correlation plane.

Figure 7: The cross-correlation function as computed from real data by correlating a smaller template I (3232 pixel) with a larger sample I (6464 pixel). The mean shift of the particle images is approximately 12 pixels to the right. Few systematical researches have been performed to evaluate the effectiveness and accuracy of final PIV results obtained using cross correlation. Therefore, users of the cross correlation method have to spend a lot of time and cost to optimize various parameters for PIV image acquiring and processing to get an accurate velocity field [4].This absence of literature on the effectiveness and accuracy of PIV is inspiration for this research project: to analyze, in an application-specific manner, the accuracy of MATLAB-based PIV software we considered for our PIV analysis of motion in Martian soil.

Figure 8: Diagrams of steps in PIV analysis of successively recorded PIV patterns in a flow: two sub-images from the same location of two frames are compared in a crosscorrelation procedure resulting in a 2-D probability density distribution which shows a peak. III. Rotated Images

To test the accuracy of the PIV software we considered using, we simulated circular motion in our acquired PIV images used the PIV software in detecting this motion. First, an image of the soil in the test bed was taken (see above) through the glass using a pointand-shoot camera. The image was taken through the glass to ensure that the image on which the analysis was conducted correctly simulated the conditions under which eventual experiment will be conducted. Also, the acquired images was converted to grayscale because PIV software works best with grayscale images since grayscale images ensure that there is a higher contrast between the particles the software searches for and the rest of the fluid. Then, MATLAB scripts were used to rotate this image about its center, for one revolution, in increments of 6 degrees. At the end of this process, there was a stack of 60 images tilted 6 degrees from the previous image.

Figure 9: The image after being rotated 36 degrees.

The MATLAB code that produced the series of images is in the Appendix. The MATLAB option crop was chosen over the MATLAB option loose for the code because this ensures that the images that are produced by imrotate are all equal in size. A lthough the crop option crops the images after they are rotated, a square region inscribed in a circular region inscribed in the original image can be used for the analysis because it is never cropped out of the image. The square region is outlined in white in the image below.

Figure 10: Sample image showing vectors used for analysis

Mathematically, the motion simulated by the process of rotating the images is circular motion with a constant angular velocity. All the vectors shown in the diagram above have known theoretical velocity values based on the MATLAB code shown in the Appendix. The analysis was conducted by inputting the series of images, 1 to 60, in pairs of 1-2, 2-3, 3-4 and so on, into three publicly available MATLAB-based PIV software (matpiv, pivlab, fluere) and setting up the parameters so that the software were measuring the velocity at the same points as the theoretically derived ones. After this, the resulting vectors from each software were plotted on the same image as the theoretical vector to get a visual perception of the accuracy of the software results. It is important to note now that each vector field like that below is the product of applying PIV to a pair of images. The vectors in green are the theoretical vectors and those in red are the experimental ones from one of the software. The analysis carried out was percentage error for each pair of vectors that lie in the white square in the field below, sum of percentage errors in the white square of each field of vectors (each field is the result of an analysis of a pair of images by a PIV software), and the sum of all the sums derived for each vector field created by each software.

Figure 11: Sample result from analysis

4. Results I. MATPIV: Matpiv is a toolbox for PIV created by Kristian Sveen of the University of Cambridge [matpiv manual]. A sample of a matpiv command for carrying out a PIV analysis is this:
[x,y,u,v] = matpiv (mpim1b.bmp,mpim1c.bmp, 64, 0.0012, 0,single);

The command above processes images mpim1b.bmp and mpim1c.bmp using a 64 X 64 kernel with 0% overlap between each processed sub-area. 0.0012 refers to the time separation between the images and single is an option that specifies how many iterations (one in this case) of cross-correlation should be carried out on the pair of images. The result consists of four matrices x, y, u and v which are measured in pixels and pixels/second. x is a matrix of the x-coordinates where the vectors are drawn (in the center of each sub-area). y is a matrix of the y-coordinates where the vectors are drawn (in the center of each sub-area). u and v are the x-components and y-components of the vectors calculated in each sub-area. These results can be visualized with the MATLAB command quiver(x,y,u,v).

For this statistical analysis, the matpiv command used was:


[x,y,u,v] = matpiv(image1,image2,32,1,0.0,'single');

Based on this analysis, the following results were recovered: Sample experimental values of x-component of velocity
Sub-A rea Coordinates 2 3 4 5 6 7 2 -8.21163 -5.31049 -1.83637 1.616693 4.924812 8.199604 3 -8.66173 -4.8456 -1.62804 1.591556 5.141235 8.517288 4 -8.73043 -4.50717 -1.75153 1.464555 5.017183 8.517034 5 -8.482263681 -4.6753092 -1.801007877 1.453186828 5.251215307 8.721054276 6 -8.1661 -5.28905 -1.63236 1.926127 5.112303 8.377348 7 -8.34833 -5.06494 -1.81915 1.849509 5.366289 8.159283

Sample experimental values of y-component of velocity


Sub-A rea Coordinates 2 3 4 5 6 7 2 8.398358 8.274315 8.544504 8.34281 8.463819 8.17882 3 5.077235 4.790196 4.796586 5.144725 5.087714 5.131278 4 1.732083 1.318847 1.832139 1.584458 1.48174 1.746328 5 -1.65306 -1.61582 -1.85545 -1.84387 -1.68683 -1.74055 6 -4.94357 -5.2165 -5.15183 -4.99039 -5.21205 -5.24424 7 -8.27928 -8.28049 -8.43121 -8.25076 -8.29548 -8.43496

where the sub-area coordinates refer to the sub-areas that are in the white square discussed above. Theoretical values of x-component of velocity
Sub-A rea Coordinates 2 3 4 5 6 7 2 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758 3 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758 4 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758 5 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758 6 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758 7 -8.37758 -5.02655 -1.67552 1.675516 5.026548 8.37758

Theoretical values of y-component of velocity


Sub-A rea Coordinates 2 3 4 5 6 7 2 8.37758 8.37758 8.37758 8.37758 8.37758 8.37758 3 5.026548 5.026548 5.026548 5.026548 5.026548 5.026548 4 1.675516 1.675516 1.675516 1.675516 1.675516 1.675516 5 -1.67552 -1.67552 -1.67552 -1.67552 -1.67552 -1.67552 6 -5.02655 -5.02655 -5.02655 -5.02655 -5.02655 -5.02655 7 -8.37758 -8.37758 -8.37758 -8.37758 -8.37758 -8.37758

Percentage errors of x-component of velocities in field identified above


Sub-A rea Coordinates 2 3 4 5 6 7 2 -0.0002 0.000565 0.00096 -0.00035 -0.0002 -0.00021 3 0.000339 -0.00036 -0.00028 -0.0005 0.000228 0.000167 4 0.000421 -0.00103 0.000454 -0.00126 -1.9E-05 0.000166 5 0.000125 -0.0007 0.000749 -0.00133 0.000447 0.00041 6 -0.00025 0.000522 -0.00026 0.001496 0.000171 -2.8E-07 7 -3.5E-05 7.64E-05 0.000857 0.001038 0.000676 -0.00026

Percentage errors of y-component of velocities in field identified above


Sub-A rea Coordinates 2 3 4 5 6 7 2 2.48E-05 -0.00012 0.000199 -4.2E-05 0.000103 -0.00024 3 0.000101 -0.00047 -0.00046 0.000235 0.000122 0.000208 4 0.000338 -0.00213 0.000935 -0.00054 -0.00116 0.000423 5 -0.00013 -0.00036 0.001074 0.001005 6.75E-05 0.000388 6 -0.00017 0.000378 0.000249 -7.2E-05 0.000369 0.000433 7 -0.00012 -0.00012 6.4E-05 -0.00015 -9.8E-05 6.85E-05

After repeating the above process for the 59 vector fields produced by matpiv , the total percentage error for the x-components of velocities produced by matpiv was found to be 0.2277 and the total percentage error for the y-components of velocities produced by matpiv was found to be 0.2328. This statistical analysis was also carried out for the magnitudes of the velocities and the angle (direction) of the velocities.

Figure 12: MATLAB surf plot of percentage errors for a typical matpiv vector field II. PIVLAB: Pivlab is another MATLAB-based PIV software that we proposed using. It comes with a GUI and was created by William Thielicke and Eize J. Stamhuis. It has options in its interface to carry out a similar kind of analysis as matpiv and output results in a .mat file. The contents of the produced .mat file (x,y,u,v) was used to carry out the analysis in MATLAB in a similar way as above. Sample experimental values of x-component of velocity
Sub-A rea Coordinates 2 3 4 5 6 7 2 0 4.82961 8.261181 0 0 0 3 0 0 0 7.477854 13.0447 0 4 0 15.37748 0 -4.97153 0 11.07954 5 0 -4.77448 15.1449 0 12.68634 -2.25074 6 15.24937 0 -6.87253 1.779358 0 0 7 -7.97261 -1.61923 0 0 -14.6783 0

Sample experimental values of y-component of velocity


Sub-A rea Coordinates 2 3 4 5 6 7 2 0 -8.0102 -3.9983 0 0 0 3 0 0 0 13.93374 -14.5519 0 4 0 -3.5761 0 12.95876 0 7.230583 5 0 -1.76888 15.30452 0 -3.66656 7.163633 6 -11.5772 0 14.97414 -4.20108 0 0 7 -9.75443 9.295033 0 0 -5.13846 0

The theoretical values are the same as identified under MATPIV. Also, the zero values above are the result of converting the NaN returned by pivlab to zero for the sake of the error calculations. Percentage errors of x-component of velocities in field identified above
Sub-A rea Coordinates 2 3 4 5 6 7 2 -0.01 -0.01961 -0.05931 -0.01 -0.01 -0.01 3 -0.01 -0.01 -0.01 0.03463 0.015952 -0.01 4 -0.01 -0.04059 -0.01 -0.03967 -0.01 0.003225 5 -0.01 -0.0005 -0.10039 -0.01 0.015239 -0.01269 6 -0.0282 -0.01 0.031017 0.00062 -0.01 -0.01 7 -0.00048 -0.00678 -0.01 -0.01 -0.0392 -0.01

Percentage errors of y-component of velocities in field identified above


Sub-A rea Coordinates 2 3 4 5 6 7 2 -0.01 -0.01956 -0.01477 -0.01 -0.01 -0.01 3 -0.01 -0.01 -0.01 0.01772 -0.03895 -0.01 4 -0.01 -0.03134 -0.01 0.067342 -0.01 0.033154 5 -0.01 0.000557 -0.10134 -0.01 0.011883 -0.05275 6 0.013032 -0.01 -0.03979 -0.00164 -0.01 -0.01 7 0.001643 -0.0211 -0.01 -0.01 -0.00387 -0.01

After repeating the above process for the 59 vector fields produced by pivlab, the total percentage error for the x-components of velocities produced by pivlab was found to be 19.6012 and the total percentage error for the y-components of velocities produced by pivlab was found to be 19.3999. This statistical analysis was also carried out for the magnitudes of the velocities and the angle (direction) of the velocities.

Figure 13: MATLAB surf plot of percentage errors for a typical pivlab vector field

III. FLUERE: Fluere is the third MATLAB-based PIV software that we proposed using. It comes with a GUI and was created by Kyle Lynch. It has options in its interface to carry out a similar kind of analysis as matpiv and pivlab and output results in series of .dat files. The contents of the produced .dat files (x,y,u,v) was used to carry out the analysis in MATLAB in a similar way as above. Sample experimental values of x-component of velocity
Sub-A rea Coordinates 2 3 4 5 6 7 Sub-A rea Coordinates 2 3 4 5 6 7 2 -2.99462 -0.45405 0.63601 1.74266 1.72815 2.03651 2 2.49051 2.3307 2.44311 2.28715 1.96353 1.47992 3 -3.9254 -2.12058 -0.22359 1.49695 1.68268 1.78522 3 1.94802 2.23345 2.26915 2.12282 1.56194 0.97209 4 -4.66279 -3.94811 -1.52012 0.996216 1.7567 2.2365 4 0.99023 1.31027 1.51004 1.39524 0.768392 0.106774 5 -5.17047 -4.39776 -1.81063 1.07895 2.22117 2.82498 5 0.264218 -1.34655 -1.79391 -1.74566 -1.44975 -1.24525 6 -5.1741 -4.74465 -1.72643 1.43909 3.17362 3.41779 6 -2.60795 -4.48242 -4.78846 -4.57704 -4.29572 -3.84474 7 -5.2004 -4.84281 -2.93354 0.005752 2.4933 3.7096 7 -4.70671 -4.5719 -4.12071 -4.3442 -4.63903 -4.66745

Sample experimental values of y-component of velocity

Percentage errors of x-component of velocities in field identified above


Sub-A rea Coordinates 2 3 4 5 6 7 2 -0.00643 -0.0091 -0.0138 0.000401 -0.00656 -0.00757 3 -0.00531 -0.00578 -0.00867 -0.00107 -0.00665 -0.00787 4 -0.00443 -0.00215 -0.00093 -0.00405 -0.00651 -0.00733 5 -0.00383 -0.00125 0.000806 -0.00356 -0.00558 -0.00663 6 -0.00382 -0.00056 0.000304 -0.00141 -0.00369 -0.00592 7 -0.00379 -0.00037 0.007508 -0.00997 -0.00504 -0.00557

Percentage errors of y-component of velocities in field identified above


Sub-A rea Coordinate 2 3 4 5 6 7 2 -0.00703 -0.00722 -0.00708 -0.00727 -0.00766 -0.00823 3 -0.00612 -0.00556 -0.00549 -0.00578 -0.00689 -0.00807 4 -0.00409 -0.00218 -0.00099 -0.00167 -0.00541 -0.00936 5 -0.01158 -0.00196 0.000707 0.000419 -0.00135 -0.00257 6 -0.00481 -0.00108 -0.00047 -0.00089 -0.00145 -0.00235 7 -0.00438 -0.00454 -0.00508 -0.00481 -0.00446 -0.00443

After repeating the above process for the 59 vector fields produced by fluere, the total percentage error for the x-components of velocities produced by fluere was found to be 10.8576 and the total percentage error for the y-components of velocities produced by fluere was found to be 10.7915. This analysis was also carried out for the magnitudes of the velocities and the angle (direction) of the velocities.

Figure 14: MATLAB surf plot of percentage errors for a typical fluere vector field 5. Discussion Based on these results, we chose matpiv for our analysis of the motion. Recently, we have also begun to take a look at how the quality of our input images (image pre-processing) and the filtering tools available for each software (vector post-processing) may affect these accuracy estimates. Also, there are default or basic settings that are not common to all of the three software. We took this into consideration in making decisions based on these results. One limitation of this project is that we cannot tell how important other choices like kernel size will affect the accuracy results. Also we do not know if the fact that it is a simple circular motion affects the accuracy of the error values. 6. Appendix I. MATLAB code used to rotate images
function rt = rotat(img1 E = 1; for k = 1:6:360 figure(1); A=imrotate(imread(img1),k,'crop'); imwrite(A,['rot' '-' num2str(E) '.tif']); E=E+1;

end end

II.

MATLAB code for theoretical value of circular velocity


xmax = 256; dx = 32; tx = [32:dx:xmax]; tx = tx-xmax/2; Nx = length(tx); % y-dimension ymax = 256; dy = 32; ty = [32:dy:ymax]; ty = ty-ymax/2; Ny = length(ty); % angular velocity w = 6; %deg/sec w = w*pi/180; %rad/sec % Create velocity field matrices vx = zeros(Ny,Nx); vy = zeros(Ny,Nx); % V = 1; for i = 1:Nx for k = 1:Ny r = sqrt(tx(i).^2+ty(k).^2);%radius V = w*r; vx(k,i) = -V*ty(k)/r; vy(k,i) = V*tx(i)/r; end end [xx,yy] = meshgrid(tx+xmax/2,ty+ymax/2); quiver(xx(1:1:end),yy(1:1:end),vx(1:1:end),vy(1:1:end));

7. References [1] Keane, Richard D., and Ronald J. Adrian. "Theory of Cross-Correlation Analysis of PIV Images." Applied Scientific Research (1992): 1-25. Print. [2] Muthanna, Chittiapaa. "Particle Image Velocimetry." (2006): 1-63. Web. July 2011. [3] Adrian, R. J., and J. Westerweel. "Introduction." Particle Image Velocimetry. New York: Cambridge UP, 2011. 1-36. Print. [4] Hu H., T. Kobayashi, K. Okamoto, and N. Taniguchi. "Evaluation of the Cross Correlation Method by Using PIV Standard Images." The Visualization Society of Japan and Ohmsha: Journal of Visualization 1st ser. 1 (1998): 1-8. Print. [5] Hart, Douglas P. "The Elimination of Correlation Errors in PIV Processing." 9th International Symposium on Applications of Laser Techniques to Fluid Mechanics (1998): 1-8. Print. [6] Stamhuis, Eize J. "Basics and Principles of Particle Image Velocimetry (PIV) for Mapping Biogenic and Biologically Relevant Flows." Aquatic Ecology (2006): 1-17. Print. [7] Raffel, Markus, Christian Willert, Jurgen Kompenhans, and Steve Wereley. "Image Evaluation Methods for PIV." Particle Image Velocimetry: a Practical Guide. Heidelberg: Springer, 2007. 123-76. Print.

Potrebbero piacerti anche