540 likes | 569 Views
This research presents a novel image-based approach for cloud modeling using a single photograph as a reference. The method involves calculating cloud image intensity and opacity, with specific processes outlined for different cloud types like cirrus, altocumulus, and cumulus. By removing cloud pixels and interpolating sky colors, realistic cloud representations are synthesized. The computational cost is minimized compared to traditional physically-based modeling.
E N D
Modeling of Clouds from a Single Photograph Yoshinori Dobashi (Hokkaido University) Yusuke Shinzo (Hokkaido University) Tsuyoshi Yamamoto (Hokkaido University)
Overview • Introduction • Related Work • Proposed Method • Results • Conclusion
Introduction • Realistic Display of Clouds • Synthesizing images of outdoor scenes • Realistic density distribution • Long research history • Modeling of clouds • Procedural approach • Physically-based approach outdoor scene
Introduction • Procedural approach • Use of simple heuristically-defined rules • Low computational cost • Difficult to adjust parameters • Physically-based approach • Simulating physical process of cloud formation • Realistic clouds • High computational cost
Our Approach • Image-based approach • Use of a single photograph • Not to reconstruct the same clouds • Using the photo as a guide to synthesize similar clouds • Three types of clouds cirrus altocumulus cumulus
Overview • Introduction • Related Work • Proposed Method • Results • Conclusion
Related Work • Procedural modeling • Fractals [Vos83] • Textured ellipsoids [Gar85] • Metaballs + noise function [Ebe97] • Spectral synthesis [Sak93] • Real-time modeling/rendering system [SSEH03] Difficult to adjust parameters [Gar85] [Ebe97] [SSEH03]
Related Work • Physically-based modeling • Numerical solution of atmospheric fluid dynamics [KH84, MYDN01, MYDN02] • Controlling cloud simulation [DKNY08] High computational cost [KH84] [MYDN01] [MYDN02] [DKNY08]
Related Work • Image-based modeling • Use of infrared satellite images [DNYO98] Not applicable to photo taken from the ground No cloud types satellite image synthesized clouds
Overview • Introduction • Related Work • Proposed Method • Results • Conclusion
Overview of Our Method cirrus alto- cumulus cumulus
Overview of Our Method cirrus alto- cumulus cumulus Calculation of cloud image (common process)
intensity opacity cirrus intensity opacity altocumulus cumulus intensity opacity Calculation of Cloud Image • Overview (input photographs) (cloud images)
1. Removing cloud pixels 2. Interpolating sky color 3. calculation of intensity/opacity Calculation of Cloud Image • Processes input image sky image intensity opacity
3. calculation of intensity/opacity Calculation of Cloud Image • Processes 1. Removing cloud pixels 2. Interpolating sky color input image sky image intensity opacity
1. Removing cloud pixels Calculation of Cloud Image • Processes 2. Interpolating sky color input image sky image 3. calculation of intensity/opacity intensity opacity
1. Removing cloud pixels 2. Interpolating sky color Calculation of Cloud Image • Processes input image sky image 3. calculation of intensity/opacity = cloud image intensity opacity
Removing Cloud Pixels • Use of chroma to identify cloud pixels • Clouds are generally white (or gray) • Remove pixel if chroma < threshold Input photograph removed cloud pixels
Calculation of Sky Image • Interpolation of sky colors by solving Poisson equation: pc: cloud pixel l = R, G, B cloud pixels pc sky image
Calculation of Cloud Image • Intensity of clouds (single scattering) sun sky viewpoint cloud
Calculation of Cloud Image • Intensity of clouds (single scattering) sun Isun sky bIsun viewpoint cloud
Calculation of Cloud Image • Intensity of clouds (single scattering) sun Isun sky bIsun viewpoint Isky cloud aIsky
Calculation of Cloud Image • Intensity of clouds (single scattering) sun Isun sky bIsun viewpoint Isky cloud aIsky Icld (p: pixel, l = R, G, B)
Calculation of Cloud Image • Computing cloud intensity (b) & opacity (a) by minimizing: store these in cloud image unknowns sky image input image
Overview of Our Method cirrus Modeling of cirrus alto- cumulus cumulus
Modeling of Cirrus • Cirrus clouds • Thin and no self-shadows • Two-dimensional texture input photograph
input image cloud image cloud plane cirrus cloud texture Modeling of Cirrus • Use of cloud image as 2D texture • Removing effect of perspective transformation by specifying cloud plane
Overview of Our Method cirrus alto- cumulus Modeling of altocumulus cumulus
metaball position radius center density field function Modeling of Altocumulus • Altocumulus • Thin but with self-shadows are observed • Using Metaballs to define three-dimensional density distribution metaball input photo
Generating Metaballs • Converting cloud image into binary image cloud image binary image
Generating Metaballs • Distance transform of binary image • Distance from a white pixel to the nearest black pixel distance image binary image
Generating Metaballs • Generating 2D metaballs at white pixels • Use distance for radius of metaball binary image
Generating Metaballs • Generating 2D metaballs at white pixels • Use distance for radius of metaball distance image binary image
Optimizing Metaball Density • Minimizing difference between cumulative density and cloud intensity center density field function [Wyvill90] cloud image cumulative density at pixel p
Optimizing Metaball Density • Example cumulative density image cloud image
Specifying Cloud Plane • Interactive specification • Orientation of cloud plane and viewing angle cloud plane
cloud plane 2D metaballs viewpoint Projecting Metaballs • Projecting metaball center onto cloud plane • Scaling metaball radius in proportion to distance from viewpoint
Computing Density Distribution • Calculating bounding box of all metaballs • Subdividing bounding box into grid • Computing density at each grid point density distribution bounding box
Overview of Our Method cirrus alto- cumulus cumulus cumulus
Modeling of Cumulus • Cumulus • Generating surface shape • Calculating densities inside surface shape cloud image surface shape 3D density distribution
Computing Surface Shape • Converting cloud image into binary image cloud image binary image
medial axis binary image distance image distance image Computing Surface Shape • Distance transform of binary image • Extracting medial axes • Pixels where distances are local maxima
medial axis cloud image thickness image colorization by optimization [Levin 04] Computing Surface Shape • Use distance at medial axis as thickness of clouds • Propagate thickness by optimization
front view side view Computing Surface Shape • Constructing surface shape • Assuming symmetric shape with respect to image plane
Computing Density Distribution • Calculating bounding box of surface shape • Subdividing bounding box into grid • Calculating density at each grid point
Overview • Introduction • Related Work • Proposed Method • Results • Conclusion
Results • Computer • CPU: Intel Corei7 (3.33 GHz) • Main memory: 4GB • GPU: NVIDIA GeForce GTX 295 • Computation time • within 10 seconds
input image cloud texture input image cloud texture Results • Cirrus
Results • Altocumulus input input synthesized synthesized
Results • Cumulus input input synthesized synthesized