[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: planning the next steps




vitaly,


applying realistic texture, and in general making the model
look more realistic, is an important long-term goal.  however,
it's less important in the short term than getting the model
to be "geometrically" realistic -- including height changes,
vertical connecting elements, and reasonable furniture.

here is an outline of the sub-goals i would like you to tackle
as part of your MEng.  i've put them in order of increasing
realism, so that by the end you will have achieved a highly
realistic, enormous model of MIT, faithful to its actual
structure and appearance.  i've also added notes about
connections to the other members of the group so that you can
both benefit from their work, and export to them the benefits
of your work.

1) finish exterior space labels (including but not limited to
grass, concrete, road, sidewalk, stairwell, ramp).  assign
reasonable colors and/or default textures for each label type.
produce a "flat" basemap with textured polygons for each area.


1a) [with michael:] integrate flat basemap with generated campus buildings. [with peter:] verify that resulting model geometry can be processed by existing walkthrough process.

1b) [with patrick:] export discovered ramps and stairwells to
route-planning module for generating inter-building routes.


2) integrate topographic (height) maps to basemap, so that it becomes a height-field, with appropriate inclines, curbs, etc. (some of this, like 6-inch curbs, will have to be done procedurally, since the topo map is not very fine-grained.)

2a) [with michael:] export topo data to generated buildings so
that the building foundation is level with the local ground.


3) generate stairs and ramps (EVC = exterior vertical connectors) to connect surrounding basemap terrain to building entrances/exits. [with peter's help:] resurrect "stairmaster" program, make it more robust, and use it to generate EVC's procedurally.

3a) [with michael:] augment building floorplans as needed to
generate EVCs as necessary.

3b) [with patrick:] export EVCs, as in (1b), with additional
height information to be incorporated into route-planning module.


4) [with peter'a help:] resurrect "furnpop" by kari anne kjolaas (read her MEng posted on the graphics page), and use it to populate furniture procedurally into building interiors (and exteriors, e.g., with outdoor benches, chairs, and tables, where appropriate).

4a) the current furnpop defines space types such as "office,"
"conference room," and "dorm room," but may not include definitions
for laboratories, kitchens, bathrooms, lounges, etc.  extend the
types as needed so that nearly all of the space types on the MIT
campus can be procedurally populated.

4b) thinking of stairwells as "interior furnishings," continue
to use stairmaster to generate appropriate stairwells and ramps
wherever they are called for in building interiors.

4c) study the existing walkthru pipeline's procedural elevator
generation, and employ the same technique to populate elevators
into all campus buildings where called for by floorplans.  note
that the existing walkthru model has elevators slowly moving up
and down by default.


5) once 1-4 are reasonably complete and validated, you can tackle the exterior (and interior?) texture problem in earnest. since there are hundreds of building exteriors, and thousands of interior spaces, it will be critical to design a scalable solution that automates as much of the modeling effort as possible. my intuition is that you can do this by inventing a clever naming scheme for textures, where the texture name incorporates the metric scale, location, surface type, and (if ambiguous) surface orientation of the surface to which the texture is to be applied. so for example if during the walkthru model compilation the image:

../textures/ne43/floor1/1meter/exterior/wall.rgb

exists, then wall.rgb is a 1-meter patch of exterior texture at the
1st-floor level.  [note:  this is just an example naming scheme; i
have no idea if it's the right way to do it in practice.]

another scaling consideration is that it be easy to *capture* these
textures, e.g., with the following multi-step process:

  a) affix a one-meter reference shape (unit square with high-
     contrast color boundary?) to building surface, with putty

  b) take digital photo, as nearly fronto-parallel as possible,
     of surface, including reference square

  c) extract a rectified texture sample from image.  [note:
     there are good tools to do this already in the graphics
     group, see e.g., alex khripin for help.]

  d) name the resulting texture appropriately according to
     building ID, surface type etc.

of these, only (c) can be fully automated, but perhaps you can
invent a way to generate samples in batch mode, or process them
more efficiently somehow.  note that the samples you acquire will
still have lighting variations due to unknown/uncontrolled
lighting conditions, but that's a problem for another day.  note
also that dealing with window boundaries, building edges,
irregular detail elements (gutters, fire escapes, etc.) is
highly non-trivial.


OK, that's an initial outline, vitaly, which should be more than enough to attempt during the next two months. please send regular updates both to me and to the group by email; once i return in mid-november we can see where we are and proceed from there.

i'll be available this (W) afternoon to discuss further as
needed.

prof. t.

Vitaly Y Kulikov wrote:
Hi all,

My major plans for the term include taking two classes, applying for Ph.D., and working on the BMG project. Because my course workload is not large this term, I plan to devote most of my time to work on the BMG project.

The first task I am working on right now is to make my basemap coloring program faster and more robust so that we could load the complete map of the MIT campus and color it in a reasonable time. I did some work in this direction during the summer, but there is still some work to be done. Once, the map is colored, I want to create the actual surface by extruding the map into 3D using the height data we have, Once we have a 3D model to work with, we can apply more realistically looking texture to it, as well as, perhaps, populate the surface with some objects such as trees. Then, by populating the surface with building models, we can get a realistic model of the whole MIT campus.

I do not expect the first task to take me longer than a month, month and a half. Then, I will have quite a large choice of problems to tackle. The one that I am mostly thinking about now is mapping pictures of different parts of the campus to the model that we construct. This way, we can make the model of the campus as close to the original as possible. This is an interesting task that involves a lot of challenges such as making the algorithm scalable enough to process the whole campus. The problem could become the topic for my MEng thesis. Also, of course there is also quite a lot of work inside the BMG pipeline that I can do.

Because I take only two classes, almost any meeting time will work for me. I am available any time after 4pm, so you can just email me the time and the place, and I will be there.

See you all soon,
Vitaly