haha nice racer ! I should know this politician, but the name escapes me
+ Reply to Thread
Results 271 to 300 of 786
-
-
He's the Jersey Governor. I don't like any politician really, but something about this guy screams Jackass....
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
I have already make that note in the change log. Avast seems marking the FFT code as malware
I have the source code for that and anyone can request it to have a view.
The ImasUncaption was long flagged by some antivirus (ever since I included this into the pack.). You can send it to virus total and you would find that only a few antivirus engine is flagging it.
NOD32 is not flagging these 2 as malwareStopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
v1.9 feels a bit sluggish... v1.8 seems faster... (now I have ignored the Spectrum_View.auf in virus scan)
Will do all the large pic test in v1.8 then... -
If you do not need those plugins(denoiser/deinterlacer/resizer/l-smash...) I'll suggest you to get the Minimal Pack instead.
Certainly a lot faster
but as I said earlier, if you find something already works, that's no reason to change.
Perhaps its time to stop adding features and starts on optimization...Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........
-
yea, the ability to group plugins by functions will be nice... but that's not in the API...
Even if I can make some sort of launcher, the long list will not get shorten.... not until user delete the relevant AUF file themselves.
I'll also need to learn SIMD/AVX programming in order to optimize plugin codes... very difficult... arrrggghhhStopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
-
I wonder if it's possible to combine motion tracking with the morph points ? So you can apply it on video instead of a still image. This is what is done in other programs. I wonder if Racer or Maverick have it figured out a good way to do that yet ?
-
Last edited by MaverickTse; 8th Dec 2014 at 19:43.
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
-
I think I can do it, maybe if I have some time, I'll try it. It will require two separate motion tracks, one for the morphing and one for the image after.
@ MT I noticed you included a "VidStabilizer" pass 1 and 2 in the ffmpeg-out plugin. It works well, but there is no need to encode video twice. You can use a Null export on the 1st pass. I made some templates in the attached zip file. When you encode the 1st pass, it will give an export error, just disregard and continue onto the 2nd pass. The only thing that needs to be created on the first pass is the stabilize.trf temp file anyway.
It would be nice to combine the two passes in one shot, but I couldn't get it to work. I have made a batch script that can however.Last edited by racer-x; 9th Dec 2014 at 17:22.
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Nope. I am asking for a demonstration/description on "how motion tracking can be used with morphing".
There are many variables in both processes:
>MT can only output a point data, at most an area, with current implementation.
>morphing can involve a variable number of points
Actually these data don't match each other well.
I'd suspect the function you mentioned is actually "Object recognition and Feature Matching" (specifically, SURF feature matching),
that can obtained a transformed rectangle as result.
Therefore I need to see how the process actually works, at least once with concrete steps.Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
The way it's used in general , for "morphing" is to track points, but those points are just x,y (possibly z in 3d) coordinates . Various effects software, morphing software use points or open or close splines to mark features . Those features move over time, so the spline changes shape over time marking that area (e.g. it might be the outline of a mouth changing from frame to frame). What you do is motion track points that correspond to splines. It's usually called "mask tracking" . So you have multiple masks that cover different areas that morph over time . Even if you can only track 1 point at a time, often that's better than hand moving that same vertex
Looking at racer's tutorial, there are morph points than control the morphing effect in aviutl, but I was wondering if there is a good way to "link" up the tracking data to the morph points. I know the data can be stored as exo. Some programs use "parenting" or "null objects" that hold the tracking data and link it that way. I haven't had much time to explore the tracking in aviutl yet, I was just throwing out an idea when I saw racer's "jackass" gif -
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........
-
Ok thanks, I'm just exploring ideas to increase the functionality and application of motion tracking in aviutl to real life scenarios . It just "feels" like it should be possible here ...since the individual morph points have an x,y position (and if you push the "setting button" it will give you the x,y coordinates)
And what was described earlier IS motion tracking, but it's just applying the motion tracked data in other ways. It's not necessarly "line fitting", because the motion tracking doesn't necessarily have to be directly linked 1:1 to vertices (you don't need a mask point or control point per track point). All it really needs is the "approximate location" on a given plane , and you can link multiple points to a single track point.
Another application for motion tracking in real life is track assisted rotoscoping. Basically , like above, it uses motion tracking data to help guide mask vertices . Instead of "normal" interpolation between keyframes, there is weighting or guidance given by trackpoints. The whole reason for this less work for user - as usual you probably still have to fine tune or make small adjustments, but much less work than doing everything manually. So instead of all manual user input to make keyframes on certain parmeters, there can be more accurate interpolation between keyframes, because of the motion track assisted dataLast edited by poisondeathray; 10th Dec 2014 at 20:00.
-
Thanks for the details.
Then I'd presents some technical obstacle here that need to be considered:
1> Track points can be lost during tracking, happen VERY OFTEN. So what should the program do when the point is lost?
2> non-1:1 correspondence seems easy for human, but actually difficult to code. If all points fits on a simple line or shape, fine, but what if they become a clump?
3> The FX to be linked with and extensibility: is linking to THE Morphing FX alone will be sufficient? (what if someday another guy write another sort of morphing script?)
Try search the keyword "SURF" and "SIFT" on youtube and see if those matching demos resemble what you need.
If it is more or less the same, then probably only point 1 will be needed to solved beforehandStopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Rotoscoping... just made one bundled with MotionTracking MK-II not long ago... not going to make another...
Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
1) Yes, track point can be lost - do you recall earlier I asked if there was a dope sheet or ability to correct points - that was why
. Pro trackers that track by points lose trackpoint too
(but there are other types of trackers besides "point" trackers, there is another category called planar trackers)
1b) the way some other trackers get around objects that "block" the path, and cause tracker to lose the track, is they have masks or hold out mattes that tell the tracker to "ignore me". So tracker skips over those sections or parts of the frame, and those can be animated as well
2) 1:1 correspondance isnt necessary or even wanted in many cases. All you want is the ability to link up to the track points. So you might want link up 6 different objects or other points to that single track point . It's similar to "parenting" or in aviutl "grouping tracks" where if you move one, they all move , like "follow the leader" or "Simon Says", but on a point level. There are many cases that this or something similar could be useful, and it doesn't necessarily have to be 100% accurate perfect track. Many times the reason for motion tracking is just to reduce amount of manual work done (but it's always nice if the track is "perfect" in the first ) .
3) Morphing, and the morph control points is just an example. The bigger picture is the flexibility to link different things to tracking data (not just an image or censor) . -
>1a: I've spent almost the whole year of 2014 on studying tracking algorithms... what I found is that once a point is lost (it can be due to background interference or really lost due to object's rotation/occlusion, or moving too fast), it can be hardly recovered in subsequent frames. The tracking plugins I made usually tracks on a group of points, calculate the averaged center and bounding box, and just discard the lost points across frames.
The two plugins included both point and planar/blob tracker.
Point tracker: MK-I(DF_Mode 1-3); MK-II(Mode 3,4)
Blob tracker: MK-I(CamShift mode); MK-II(Mode 1,2)
What you see that "looks like" a planar tracker, usually match(it is match, not track) a bunch of points and calculate a transformation rectangle. Few are genuine blob tracker
1b> ALL tracking algorithm on Earth currently have difficulty recovering from a complete lost-of-target, no matter how you mask it, UNLESS the object is moving with constant trajectory (i.e. predictable assuming constant acceleration or constant velocity) OR reappear very close to the last trackable position, OR having a very distinctive pattern.(what you may find on web showing how well a tracking program works on human face, often fails miserably when used in different real-life situations)
Also, the more robust the error-correction is, the slower the program runs.
2> point tracking is often an All-or-None situation. It either works, or lost the point, or tracked the wrong thing.
Moving one point spreading partial displacement to neighbouring points... a common feature in 3DCG soft, but I doubt if that gives meaningful result on a video
3> GET SOMEBODY ELSE TO CODE IT
Every time I tried to incorporate the coordinates(or whatever parameters) into EXO, with specific FX and unique options, is a PAINFUL and BORING process...
I can't imagine I'm still doing this on my own without getting a cent....(i'm not a masochist!)
It is possible to save the tracking data into a CSV, then make a program to do the substitution using a custom EXO block... but then certainly many user will complaint it is difficult to use... and merging multiple CSV files into a single EXO will lead to a lot more variables...(The morphing example implies merging several separated tracking data)
I'm serious on the GET SOMEBODY ELSE TO CODE, since a researcher/postgraduate student studying "Machine Vision" will certainly writes more sophisticated code, and someone proficient in SIMD/Assembly will likely write something in more efficient ways. A true masochist will be happy to do monotonic typing, GUI design and debug.Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse -
Cheers Maverick .
I wasn't "asking" you to do it. I was asking if the linking was possible already in the aviutl framework (lots of things I don't know about aviutl). You've already done a good job introducing a tracker, the next logical step would be to refine it or add more functions to it . I'm just sharing information on how it's done in retail programs, and maybe that would give ideas on how to improve it or use it in different ways
Of course there are many situations that are difficult , or even impossible to track, but there are ways and techniques other programs use to get around those situations, including user assist . -
Probably I will not release anything until after new year...
Xmas is pressing my nerve, learning SIMD go my head scratched, porting C#/external library codes into clean native C++ take me weeks...
I wish I have the money to go for a trip...
(I'm now in the process of trying to trim down, and drop the .NET dependency, of plugins made in 2014... first target is the GIF Export Plugin, progressing slowly)
OTZ
Next year's primary schedule will be tuning and optimization, probably I will not introduce new features unless the Japanese developers make something that is easy to port.Stopping development until someone save me from poverty or get me out of Hong Kong...
Twitter @MaverickTse