Finally after all those long discussions on the best way of architecturing variational image processing problems based on dolfin, a minimal demo showing how to solve a classical motion estimation PDE is available now -- thanks for all the support. Detailed explanation is given here:
http://code.google.com/p/debiosee/wiki/DemosOptiocFlowHornSchunck Currently, the c++ implementation is done and the python wrapper is on the way. I have tried to perform sub-classing as much as possible and leave the rest to be implemented outside of the main classes. While this works, there is a tiny problem which I'm not quite happy about. Here is what's happening: [ITK-backend] | v [GenericImage]-------\ | | v | [ImageToMesh] | | | v | [FunctionSpace] | | | v | [ImageFunction]<-----/ If you still cannot see what's happening, get a monospace font :) What I don't like is the right branch connecting GenericImage to ImageFunction. There should be a way of making sure that the two branches are initiated from the same image source, or this could be a source of error. Simply encapsulating this in a class takes away the freedom of defining a general problem away from the user. Another problem is converting images back from functions. To do that, we need image dimension, size and data pointer. Of these, it seems that there is no way to re-construct image size from a given function (any Function, not just ImageFunction, eg the solution of a PDE) asuming that the corresponding mesh is a structured grid. For instance, does UnitSquare store the input parameters from which the image size can be restored? -Ali _______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
