Humanize functions typical add an element of randomness to midi info to try and make it more "human" -- but human playing is more like organized chaos than "random". For example, even amateur musicians can usually find the downbeat, even if they struggle with playing a sixteenth note passages. A computer treats all midi notes the same, so if you want all your downbeats to stay in place, or just adjust sixteenth or eighth notes, you'd have to do a ton of manual editing to make it happen. That's why I created Smarter Humanize.
It's a Logic Script that gives you deep control over your midi notes based on their note value. You can keep all of your quarter notes right on the beat, and a little delay and randomization to the eighths, and a lot of delay and a lot of randomization to the sixteenths.
It also has a really robust velocity manager that can boost or cut velocity from the downbeat, quarter notes, eighth notes and sixteenths independently. With that kind of control you can put it after an arpeggiator and shape the velocities so it sounds like a musical performance. Or emulate the way a string player plays a little louder on the up bow and a little softer on the downbow on fast passages.
Logic Pro X only (plugin version in development)
Smarter Humanize is a script for use with the MIDI FX Scripter in Logic Pro X - It's an intelligent humanizer that lets you humanize each element of a bar independently.