Extend the analysis to turbulent flows and make an unsteady analysis of the stationary flows we considered...analyze fluid flow on Arnold's Cat Map?
frames =
VideoExtractFrames[
Video["/Users/deangladish/Downloads/water.mp4",
Appearance -> Automatic, AudioOutputDevice -> Automatic,
SoundVolume -> Automatic],
Interval[{Quantity[0.0, "Seconds"], Quantity[2.0, "Seconds"]}]];
flow = ImageDisplacements[{frames[[35]], frames[[36]] }]
pts = ImageFeatureTrack[{im1 = frames[[35]], im2 = frames[[36]]},
MaxFeatures -> 20];
Manipulate[ArrayPlot[Nest[Compile[{{pic, _Integer, 2}},
Table[
pic[[Mod[x + y, 100, 1], Mod[x + 2 y, 100, 1]]], {x, 100}, {y,
100}]],
255 - Reverse[Map[(IntegerPart [#*255]) &,
ImageData[ColorConvert[ImageResize[
Show[ImageAssemble[{im1, im2}],
Graphics[{Green, PointSize[.02],
MapThread[
If[#2 === Missing[], {Cyan, Point[#1]},
Arrow[{#1, #2 + {ImageDimensions[im1][[1]], 0}}]] &,
pts]}]
], {100, 100}], "Grayscale"]]]], iter],
Frame -> False], {{iter, 1, "iterations"}, 0, 150, 1,
Appearance -> "Labeled"}, SaveDefinitions -> True]
@Chase Marangu and @Mohammad Ali Ghorbani just remember how insanely fast I could type and the bean bags in the building, that we sat there together. We started to study river flow velocity estimation...please tell us more we're definitely interested in video processing and animated optical fluid flows!
pts = ImageFeatureTrack[{im1 = frames[[35]],
im2 = frames[[36]]},
MaxFeatures -> 20];
Show[ImageAssemble[{im1, im2}],
Graphics[{Green, PointSize[.02],
MapThread[
If[#2 === Missing[], {Cyan, Point[#1]},
Arrow[{#1, #2 + {ImageDimensions[im1][[1]], 0}}]] &,
pts]}]]


A lot of the time we try to make it too nice so just throw something together that works and work on your other assignments.