Tone mapping and LUTs are both used in UE4 to adjust the colors of the final image, but in different ways:
- Tonemapping is the general term for mapping a high dynamic range to a lower dynamic range.
- LUT stands for lookup table and in the case of UE4 LUTs are used to do final color correction on the tonemapped image.
For example take two highlights, one with an intensity of 1 and another with an intensity of 2. Without tonemapping both would result in a value of 1 on your screen. With tonemapping these are compressed into the available range based on the overall intensity of the whole image.
A LUT on the other hand takes those LDR values and converts them to something else. This allows you to do various image adjustments in an external image editor (for example photoshop) and bake them into a single small texture. (The look up table)
In unreal both of these work the same for the whole image. The posted images use a different tone mapper that instead looks at the surrounding pixels and only adjusts the intensity based on those, this results in the strong haloing effect visible here. The big difference is that two pixels with the same original intensity can be tonemapped to different LDR values based on their neighbours.
To properly implement this in unreal you would have to replace the tonemapper, which is probably not easy. Additionally, these types of local filters are far more expensive to render as they have to calculate a lot more per pixel. However, if you only care about the general look and not so much about being 100% accurate, a simpler approach could be to raise the saturation in the existing tonemapper and to add an unsharp mask effect via a post process material to get a similar haloing.