Merge 2.4 into master

Original pull requests:

* #1152 from StevenPuttemans:bugfix_2795
* #1210 from pengx17:2.4_ocl_surf_intel_fix
* #1241 from SpecLad:redundant-precomps
* #1245 from rdm12:doc_tutorial_camera_calibration
* #1251 from StevenPuttemans:bugfix_3209
* #1252 from asmorkalov:winrt_api_cert_highgui_fix
* #1254 from pengx17:2.4_filter2d_
* #1255 from SpecLad:no-cr
* #1256 from kamjagin:2.4
* #1258 from apavlenko:java_video_capture
* #1259 from pengx17:2.4_fix_cvtcolor
* #1262 from StevenPuttemans:fix_surf_tutorial
* #1263 from abidrahmank:pyCLAHE_24
* #1270 from rdm12:bugfix_3094
* #1272 from kamjagin:fixingQTKitPublic2.4
* #1275 from rdm12:bug_1922
* #1276 from nghiaho12:mushroom
* #1277 from NCBee:2.4
* #1279 from asmorkalov:ocv_opt_tabs
* #1280 from asmorkalov:winrt_detect_fix
* #1284 from melody-rain:superres_example_2
* #1286 from SpecLad:optflow-sf-init
* #1288 from nghiaho12:haar