Loading ...
Sorry, an error occurred while loading the content.

Re: [PanoToolsNG] Pano2VR makes different default cubefaces

Expand Messages
  • Thomas Rauscher
    ... This is chosen by design, and there are two reason: * The tile size width/Pi is practical for converting between formats to avoid losing quality but for
    Message 1 of 11 , Nov 1, 2008
    • 0 Attachment
      Hans Nyberg wrote, On 01.11.2008 10:41 Uhr:
      > While doing experiments with Pano2VR I discovered that the last Mac version defaults to Pi
      > conversion of cubefaces in the convert input option but when you do movies and flash the
      > default size is width/4.
      >
      > This might be very confusing for people who are unaware of this.

      This is chosen by design, and there are two reason:

      * The tile size width/Pi is practical for converting between formats to
      avoid losing quality but for outputting a panorama width/4 is enough
      because then the optimal resolution is in the middle between center and
      the border and this is imho a good compromise. With width/Pi it is not
      possible to produce a sharp edge near the cube face corners. To produce
      the best possible output the equirectangular would need to have a width
      of Pi*sqrt(2) ~ 4.443 the tile size. Of course it would loose quality in
      the center but then it would be possible to produce a sharp line near
      the cube face edge. So from the view as a demand to the panorama source
      image as "best output possible" the correct setting would be width/4.443.

      * Pano2VR has a lot of unexperienced/new panographers as users and they
      don't understand the concept of tile size. They reduce the input image
      size instead (for example in Photoshop) to produce smaller file sizes.
      So a width/4 gives good results and is easier to understand then
      width/Pi or width/(Pi*sqrt(2)).

      --
      MfG,
      Thomas
    • fierodeval
      Hi Thomas, I saw this behavior too, if I open a 4000x2000 panorama, then the default cubeface is width/4 = 1000. But if you use width/4 you are loosing quality
      Message 2 of 11 , Nov 1, 2008
      • 0 Attachment
        Hi Thomas,

        I saw this behavior too, if I open a 4000x2000 panorama, then the
        default cubeface is width/4 = 1000. But if you use width/4 you are
        loosing quality in all the cubeface, not only in the edges of the
        cubeface. If I display a MOV with 1000x1000 cubefaces I see the same
        quality than with a 3140x1570 equirect.

        I don't understand when you say "loose quality in the center" or
        "sharp line near the cube face". If you modify the cubeface you change
        the quality in all the cubeface, not only in the center or in the
        edge. Or maybe I did not understand anything?


        Another issue about Pano2VR. I always ask me what is the practical
        function of "Optimal" value for the cubeface. This value depends of
        the window size, but almost all panoramas are shown with a percentage
        size of the window, not a fixed size. And the existence of an optimal
        cubesize for a display window size, avoid the possibility to do
        zoom-in in the panorama, because the optimal value is calculated for a
        resolution of 1:1 cubeface:screen. Is this correct?

        regards!
        fiero



        --- In PanoToolsNG@yahoogroups.com, Thomas Rauscher <yahoo@...> wrote:
        >
        > Hans Nyberg wrote, On 01.11.2008 10:41 Uhr:
        > > While doing experiments with Pano2VR I discovered that the last
        Mac version defaults to Pi
        > > conversion of cubefaces in the convert input option but when you
        do movies and flash the
        > > default size is width/4.
        > >
        > > This might be very confusing for people who are unaware of this.
        >
        > This is chosen by design, and there are two reason:
        >
        > * The tile size width/Pi is practical for converting between formats to
        > avoid losing quality but for outputting a panorama width/4 is enough
        > because then the optimal resolution is in the middle between center and
        > the border and this is imho a good compromise. With width/Pi it is not
        > possible to produce a sharp edge near the cube face corners. To produce
        > the best possible output the equirectangular would need to have a width
        > of Pi*sqrt(2) ~ 4.443 the tile size. Of course it would loose
        quality in
        > the center but then it would be possible to produce a sharp line near
        > the cube face edge. So from the view as a demand to the panorama source
        > image as "best output possible" the correct setting would be
        width/4.443.
        >
        > * Pano2VR has a lot of unexperienced/new panographers as users and they
        > don't understand the concept of tile size. They reduce the input image
        > size instead (for example in Photoshop) to produce smaller file sizes.
        > So a width/4 gives good results and is easier to understand then
        > width/Pi or width/(Pi*sqrt(2)).
        >
        > --
        > MfG,
        > Thomas
        >
      • Hans Nyberg
        ... to Pi ... the ... Ok If you had followed this thread this is exactly what I have tried to illustrate. However I still believe the different sizes are
        Message 3 of 11 , Nov 1, 2008
        • 0 Attachment
          --- In PanoToolsNG@yahoogroups.com, Thomas Rauscher <yahoo@...> wrote:
          >
          > Hans Nyberg wrote, On 01.11.2008 10:41 Uhr:
          > > While doing experiments with Pano2VR I discovered that the last Mac version defaults
          to Pi
          > > conversion of cubefaces in the convert input option but when you do movies and flash
          the
          > > default size is width/4.
          > >
          > > This might be very confusing for people who are unaware of this.
          >
          > This is chosen by design, and there are two reason:
          >
          > * The tile size width/Pi is practical for converting between formats to
          > avoid losing quality but for outputting a panorama width/4 is enough
          > because then the optimal resolution is in the middle between center and
          > the border and this is imho a good compromise. With width/Pi it is not
          > possible to produce a sharp edge near the cube face corners. To produce
          > the best possible output the equirectangular would need to have a width
          > of Pi*sqrt(2) ~ 4.443 the tile size. Of course it would loose quality in
          > the center but then it would be possible to produce a sharp line near
          > the cube face edge. So from the view as a demand to the panorama source
          > image as "best output possible" the correct setting would be width/4.443.

          Ok
          If you had followed this thread this is exactly what I have tried to illustrate.
          However I still believe the different sizes are confusing for many people.

          It would be better to have a choise for setting the default in the preferences.

          Hans
        • Hans Nyberg
          ... I agree completelly. The optimal size shown right beside the cubface size is very confusing. It is also not relevant today. You do not produce movies for
          Message 4 of 11 , Nov 1, 2008
          • 0 Attachment
            --- In PanoToolsNG@yahoogroups.com, "fierodeval" <fierodeval@...> wrote:
            >
            > Hi Thomas,
            >
            > I saw this behavior too, if I open a 4000x2000 panorama, then the
            > default cubeface is width/4 = 1000. But if you use width/4 you are
            > loosing quality in all the cubeface, not only in the edges of the
            > cubeface. If I display a MOV with 1000x1000 cubefaces I see the same
            > quality than with a 3140x1570 equirect.
            >
            > I don't understand when you say "loose quality in the center" or
            > "sharp line near the cube face". If you modify the cubeface you change
            > the quality in all the cubeface, not only in the center or in the
            > edge. Or maybe I did not understand anything?
            >
            >
            > Another issue about Pano2VR. I always ask me what is the practical
            > function of "Optimal" value for the cubeface. This value depends of
            > the window size, but almost all panoramas are shown with a percentage
            > size of the window, not a fixed size. And the existence of an optimal
            > cubesize for a display window size, avoid the possibility to do
            > zoom-in in the panorama, because the optimal value is calculated for a
            > resolution of 1:1 cubeface:screen. Is this correct?

            I agree completelly. The optimal size shown right beside the cubface size is very
            confusing. It is also not relevant today.

            You do not produce movies for zooming in on small displays sizes any more.

            Hans
          • Thomas Rauscher
            ... But for the best cube face possible you have to think the other direction. You have to think of the necessary equirectangular to produce these cube
            Message 5 of 11 , Nov 1, 2008
            • 0 Attachment
              fierodeval wrote, On 01.11.2008 19:04 Uhr:
              > Hi Thomas,
              >
              > I saw this behavior too, if I open a 4000x2000 panorama, then the
              > default cubeface is width/4 = 1000. But if you use width/4 you are
              > loosing quality in all the cubeface, not only in the edges of the
              > cubeface. If I display a MOV with 1000x1000 cubefaces I see the same
              > quality than with a 3140x1570 equirect.

              But for the "best cube face possible" you have to think the other
              direction. You have to think of the necessary equirectangular to produce
              these cube faces.

              Just imagine a cube face with black and white lines, each 1 pixel in
              width. To produce such a cube face with an equirectangular image the
              width would need to be tile size * pi * sqrt(2) to produce such a
              resolution.

              To simplify the problem for a moment just think of it in two dimension,
              looking onto the scene from the top. The equirectangular image is a
              circle and the cube faces build a square.

              To produce the highest possible resolution *in the corner* the circle
              needs to have a radius of (tile size / 2) * sqrt(2). The resulting
              circumference is now (square width / 2) * sqrt(2) * 2 * Pi = square
              width * sqrt(2) * Pi.

              If you look at this problem back in 3D the corner of the cube has a
              distance of (cube size / 2) * sqrt(3) and the sphere that hits this cube
              exactly at the corner needs to have this radius. Fortunately the same
              amount of "stretching" happens from the equirectangular projection so
              not more resolution is needed as for a cylinder.

              > I don't understand when you say "loose quality in the center" or
              > "sharp line near the cube face". If you modify the cubeface you change
              > the quality in all the cubeface, not only in the center or in the
              > edge. Or maybe I did not understand anything?

              The equirectangular image of this size would provide a higher resolution
              for the center of the cube face but as we want to produce a cube face we
              reduce this portion by 1/sqrt(2) so approximately 3 pixels in the
              equirectangular would just produce 2 pixel on the cube face.

              As a conclusion: The formula to keep the resolution

              cube face size=equi width/Pi

              is only true in the equi -> cube direction. For the other direction

              equi width=cube face size * Pi * sqrt(2)

              would be true. As in the normal panorama workflow you start with an
              equirectangular and convert it to cubic (or extract a view) to patch
              stuff. In this process you are not adding high frequency information to
              the image so it is safe to convert the image back with just the factor Pi.

              > Another issue about Pano2VR. I always ask me what is the practical
              > function of "Optimal" value for the cubeface. This value depends of
              > the window size, but almost all panoramas are shown with a percentage
              > size of the window, not a fixed size. And the existence of an optimal
              > cubesize for a display window size, avoid the possibility to do
              > zoom-in in the panorama, because the optimal value is calculated for a
              > resolution of 1:1 cubeface:screen. Is this correct?

              Yes. This is just a *hint*. If you plan a zoom in of x2 then you need
              the doubled tile size. Also if you use a percentage you can calculate a
              resolution for the target screen size.

              --
              MfG,
              Thomas
            • fierodeval
              Yes, I understand. But when you speak about the sqrt(2) , you are speaking about the figure in the right of this image
              Message 6 of 11 , Nov 1, 2008
              • 0 Attachment
                Yes, I understand. But when you speak about the "sqrt(2)", you are
                speaking about the figure in the right of this image
                http://www.devalvr.com/fiero/equicube.jpg . Te correct figure is in
                the left and this figure is valid in the two directions.

                Then, if I understand correctly, you say that the figure for
                equirect->cube conversion is the left image and for cube->equirect is
                the right image?


                fiero



                --- In PanoToolsNG@yahoogroups.com, Thomas Rauscher <yahoo@...> wrote:
                >
                > fierodeval wrote, On 01.11.2008 19:04 Uhr:
                > > Hi Thomas,
                > >
                > > I saw this behavior too, if I open a 4000x2000 panorama, then the
                > > default cubeface is width/4 = 1000. But if you use width/4 you are
                > > loosing quality in all the cubeface, not only in the edges of the
                > > cubeface. If I display a MOV with 1000x1000 cubefaces I see the same
                > > quality than with a 3140x1570 equirect.
                >
                > But for the "best cube face possible" you have to think the other
                > direction. You have to think of the necessary equirectangular to
                produce
                > these cube faces.
                >
                > Just imagine a cube face with black and white lines, each 1 pixel in
                > width. To produce such a cube face with an equirectangular image the
                > width would need to be tile size * pi * sqrt(2) to produce such a
                > resolution.
                >
                > To simplify the problem for a moment just think of it in two dimension,
                > looking onto the scene from the top. The equirectangular image is a
                > circle and the cube faces build a square.
                >
                > To produce the highest possible resolution *in the corner* the circle
                > needs to have a radius of (tile size / 2) * sqrt(2). The resulting
                > circumference is now (square width / 2) * sqrt(2) * 2 * Pi = square
                > width * sqrt(2) * Pi.
                >
                > If you look at this problem back in 3D the corner of the cube has a
                > distance of (cube size / 2) * sqrt(3) and the sphere that hits this
                cube
                > exactly at the corner needs to have this radius. Fortunately the same
                > amount of "stretching" happens from the equirectangular projection so
                > not more resolution is needed as for a cylinder.
                >
                > > I don't understand when you say "loose quality in the center" or
                > > "sharp line near the cube face". If you modify the cubeface you change
                > > the quality in all the cubeface, not only in the center or in the
                > > edge. Or maybe I did not understand anything?
                >
                > The equirectangular image of this size would provide a higher
                resolution
                > for the center of the cube face but as we want to produce a cube
                face we
                > reduce this portion by 1/sqrt(2) so approximately 3 pixels in the
                > equirectangular would just produce 2 pixel on the cube face.
                >
                > As a conclusion: The formula to keep the resolution
                >
                > cube face size=equi width/Pi
                >
                > is only true in the equi -> cube direction. For the other direction
                >
                > equi width=cube face size * Pi * sqrt(2)
                >
                > would be true. As in the normal panorama workflow you start with an
                > equirectangular and convert it to cubic (or extract a view) to patch
                > stuff. In this process you are not adding high frequency information to
                > the image so it is safe to convert the image back with just the
                factor Pi.
                >
                > > Another issue about Pano2VR. I always ask me what is the practical
                > > function of "Optimal" value for the cubeface. This value depends of
                > > the window size, but almost all panoramas are shown with a percentage
                > > size of the window, not a fixed size. And the existence of an optimal
                > > cubesize for a display window size, avoid the possibility to do
                > > zoom-in in the panorama, because the optimal value is calculated for a
                > > resolution of 1:1 cubeface:screen. Is this correct?
                >
                > Yes. This is just a *hint*. If you plan a zoom in of x2 then you need
                > the doubled tile size. Also if you use a percentage you can calculate a
                > resolution for the target screen size.
                >
                > --
                > MfG,
                > Thomas
                >
              • Keith Martin
                ... Hi Thomas, I d really appreciate a hint for the maximum recommended cubeface size for whatever equirect is currently being used. CubicConverter does this -
                Message 7 of 11 , Nov 1, 2008
                • 0 Attachment
                  Sometime around 1/11/08 (at 20:39 +0100) Thomas Rauscher said:

                  >Yes. This is just a *hint*. If you plan a zoom in of x2 then you need
                  >the doubled tile size. Also if you use a percentage you can calculate a
                  >resolution for the target screen size.

                  Hi Thomas,

                  I'd really appreciate a hint for the maximum recommended cubeface
                  size for whatever equirect is currently being used. CubicConverter
                  does this - in fact it limits the maximum size that it will make to
                  equirect width / pi. (Actually, when I just checked this it went to
                  two pixels larger - 2548px for an 8000px equirect - but that's
                  splitting hairs.)

                  (This is a separate issue from feedback regarding ideal cubeface size
                  for a specific (non-zoomed) display size. I appreciate that and I do
                  deliver in fixed sizes as well as scaled ones.)

                  Pano2VR provides no hint or warning when someone tries to push the
                  output beyond the input's ideal. I like the fact that the software
                  doesn't prohibit larger outputs (although I will endeavour never to
                  do it this way), but I think it would be *great* if the UI helped
                  keep people from overcooking their images like this.

                  k
                • Thomas Rauscher
                  ... Yes. correct. Because the cube faces *could* contain more information in the corners. If the source was a equirectangular with 1/Pi as factor for the cube
                  Message 8 of 11 , Nov 1, 2008
                  • 0 Attachment
                    fierodeval wrote, On 01.11.2008 21:59 Uhr:
                    > Yes, I understand. But when you speak about the "sqrt(2)", you are
                    > speaking about the figure in the right of this image
                    > http://www.devalvr.com/fiero/equicube.jpg . Te correct figure is in
                    > the left and this figure is valid in the two directions.
                    >
                    > Then, if I understand correctly, you say that the figure for
                    > equirect->cube conversion is the left image and for cube->equirect is
                    > the right image?

                    Yes. correct. Because the cube faces *could* contain more information in
                    the corners.

                    If the source was a equirectangular with 1/Pi as factor for the cube
                    faces size then it is safe to just use the left type of conversion again
                    because the pixels in corners are stretched by a factor of sqrt(2).

                    If the source images are cube faces, for example of a rendering from a
                    3D software, then you need to use the conversion on the right side to
                    avoid losing resolution/information.

                    The factor Pi*sqrt(2) would also be true if the equi->cube was executed
                    with a factor smaller then 1/Pi*sqrt(2) to get the maximum out of the
                    cube faces. Another case would be if you recover a equirectangular from
                    a QTVR where you don't know the original resolution.

                    --
                    MfG,
                    Thomas
                  • fierodeval
                    Hi Thomas, But, if the default value is width/4 you are using this figure: http://www.devalvr.com/fiero/equicube2.jpg , loosing a lot of information in the
                    Message 9 of 11 , Nov 2, 2008
                    • 0 Attachment
                      Hi Thomas,

                      But, if the default value is width/4 you are using this figure:
                      http://www.devalvr.com/fiero/equicube2.jpg , loosing a lot of
                      information in the conversion.

                      If you take the output equirect from PTGui, all values superior to
                      3.14 in the divisor are loosing information in the conversion.

                      regards!
                      fiero



                      --- In PanoToolsNG@yahoogroups.com, Thomas Rauscher <yahoo@...> wrote:
                      >
                      > fierodeval wrote, On 01.11.2008 21:59 Uhr:
                      > > Yes, I understand. But when you speak about the "sqrt(2)", you are
                      > > speaking about the figure in the right of this image
                      > > http://www.devalvr.com/fiero/equicube.jpg . Te correct figure is in
                      > > the left and this figure is valid in the two directions.
                      > >
                      > > Then, if I understand correctly, you say that the figure for
                      > > equirect->cube conversion is the left image and for cube->equirect is
                      > > the right image?
                      >
                      > Yes. correct. Because the cube faces *could* contain more
                      information in
                      > the corners.
                      >
                      > If the source was a equirectangular with 1/Pi as factor for the cube
                      > faces size then it is safe to just use the left type of conversion
                      again
                      > because the pixels in corners are stretched by a factor of sqrt(2).
                      >
                      > If the source images are cube faces, for example of a rendering from a
                      > 3D software, then you need to use the conversion on the right side to
                      > avoid losing resolution/information.
                      >
                      > The factor Pi*sqrt(2) would also be true if the equi->cube was executed
                      > with a factor smaller then 1/Pi*sqrt(2) to get the maximum out of the
                      > cube faces. Another case would be if you recover a equirectangular
                      from
                      > a QTVR where you don't know the original resolution.
                      >
                      > --
                      > MfG,
                      > Thomas
                      >
                    Your message has been successfully submitted and would be delivered to recipients shortly.