[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [websites/digikam-org/dev] static/reports/clang/master: update clang static analyzer report digiKam-
From:       Gilles Caulier <null () kde ! org>
Date:       2018-09-27 16:38:46
Message-ID: E1g5ZJO-0001G2-8c () code ! kde ! org
[Download RAW message or body]

Git commit 18d60dfec9d13203f07ba8afbe1d97e440b94db7 by Gilles Caulier.
Committed on 27/09/2018 at 16:38.
Pushed by cgilles into branch 'dev'.

update clang static analyzer report digiKam-master-rev-a20f6ed49d.

M  +96   -108  static/reports/clang/master/index.html
R  +0    -0    static/reports/clang/master/report-04dfb1.html [from: \
static/reports/clang/master/report-f55b73.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-05bb7a.html [from: \
static/reports/clang/master/report-c73731.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-13f5ef.html [from: \
static/reports/clang/master/report-62f63b.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-1484ad.html [from: \
static/reports/clang/master/report-17105d.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-246064.html [from: \
static/reports/clang/master/report-6aee3a.html - 100% similarity] D  +0    -922  \
static/reports/clang/master/report-26cd72.html R  +0    -0    \
static/reports/clang/master/report-2cb6e1.html [from: \
static/reports/clang/master/report-e5c799.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-2f6e59.html [from: \
static/reports/clang/master/report-f4df8e.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-37c21d.html [from: \
static/reports/clang/master/report-31b9e4.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-45cfba.html [from: \
static/reports/clang/master/report-a8d6f7.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-4a77aa.html [from: \
static/reports/clang/master/report-c57862.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-4b9f00.html [from: \
static/reports/clang/master/report-3496d4.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-4e6aab.html [from: \
static/reports/clang/master/report-2b9965.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-4ec4cd.html [from: \
static/reports/clang/master/report-b5cbf4.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-52d75f.html [from: \
static/reports/clang/master/report-101c98.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-615b81.html [from: \
static/reports/clang/master/report-b435e5.html - 100% similarity] D  +0    -922  \
static/reports/clang/master/report-63575f.html D  +0    -612  \
static/reports/clang/master/report-6749c4.html R  +0    -0    \
static/reports/clang/master/report-6db20c.html [from: \
static/reports/clang/master/report-bb074e.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-6f4e9d.html [from: \
static/reports/clang/master/report-fd9664.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-6f9b3a.html [from: \
static/reports/clang/master/report-414ecb.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-7259a4.html [from: \
static/reports/clang/master/report-29cefc.html - 100% similarity] R  +237  -245  \
static/reports/clang/master/report-748462.html [from: \
static/reports/clang/master/report-50e04b.html - 080% similarity] R  +0    -0    \
static/reports/clang/master/report-75973d.html [from: \
static/reports/clang/master/report-500e69.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-7d93f9.html [from: \
static/reports/clang/master/report-c8bcff.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-825dde.html [from: \
static/reports/clang/master/report-fca219.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-856068.html [from: \
static/reports/clang/master/report-e3aec3.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-945920.html [from: \
static/reports/clang/master/report-94982b.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-a0c540.html [from: \
static/reports/clang/master/report-fb99f3.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-aa98fa.html [from: \
static/reports/clang/master/report-4f83ca.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-b16df8.html [from: \
static/reports/clang/master/report-2af2bf.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-b3762f.html [from: \
static/reports/clang/master/report-b38098.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-b3d07a.html [from: \
static/reports/clang/master/report-07fe1f.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-b44fa4.html [from: \
static/reports/clang/master/report-bf508f.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-b9fe2b.html [from: \
static/reports/clang/master/report-8a5ca9.html - 100% similarity] D  +0    -613  \
static/reports/clang/master/report-bdde48.html R  +0    -0    \
static/reports/clang/master/report-c038b4.html [from: \
static/reports/clang/master/report-1cd406.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-ccbb3a.html [from: \
static/reports/clang/master/report-6a4a2e.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-d19535.html [from: \
static/reports/clang/master/report-9d5bb8.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-d38fb4.html [from: \
static/reports/clang/master/report-e7b0ce.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-d3cb10.html [from: \
static/reports/clang/master/report-72348a.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-d951fc.html [from: \
static/reports/clang/master/report-ae50cb.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-de6370.html [from: \
static/reports/clang/master/report-053c33.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-e4dc2c.html [from: \
static/reports/clang/master/report-ff7422.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-e675ee.html [from: \
static/reports/clang/master/report-982035.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-e8237c.html [from: \
static/reports/clang/master/report-8c8dc0.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-f3b4f1.html [from: \
static/reports/clang/master/report-4fadec.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-ff0b3f.html [from: \
static/reports/clang/master/report-b8d55b.html - 100% similarity] R  +0    -0    \
static/reports/clang/master/report-ff8fab.html [from: \
static/reports/clang/master/report-aa88fd.html - 100% similarity]

https://commits.kde.org/websites/digikam-org/18d60dfec9d13203f07ba8afbe1d97e440b94db7

diff --git a/static/reports/clang/master/index.html \
b/static/reports/clang/master/index.html index f2ddc274..18f6e6ec 100644
--- a/static/reports/clang/master/index.html
+++ b/static/reports/clang/master/index.html
@@ -1,6 +1,6 @@
 <html>
 <head>
-<title>digiKam-master-rev-010d4ae153</title>
+<title>digiKam-master-rev-a20f6ed49d</title>
 <link type="text/css" rel="stylesheet" href="scanview.css"/>
 <script src="sorttable.js"></script>
 <script language='javascript' type="text/javascript">
@@ -55,7 +55,7 @@ function ToggleDisplay(CheckButton, ClassName) {
 <!-- SUMMARYENDHEAD -->
 </head>
 <body>
-<h1>digiKam-master-rev-010d4ae153</h1>
+<h1>digiKam-master-rev-a20f6ed49d</h1>
 
 <table>
 <tr><th>User:</th><td>gilles@localhost.localdomain</td></tr>
@@ -63,22 +63,22 @@ function ToggleDisplay(CheckButton, ClassName) {
 <tr><th>Command Line:</th><td>make -j3</td></tr>
 <tr><th>Clang Version:</th><td>clang version 3.9.1 (tags/RELEASE_391/final)
 </td></tr>
-<tr><th>Date:</th><td>Thu Sep 27 08:25:39 2018</td></tr>
+<tr><th>Date:</th><td>Thu Sep 27 17:14:08 2018</td></tr>
 </table>
 <h2>Bug Summary</h2><table>
 <thead><tr><td>Bug Type</td><td>Quantity</td><td \
                class="sorttable_nosort">Display?</td></tr></thead>
-<tr style="font-weight:bold"><td class="SUMM_DESC">All Bugs</td><td \
class="Q">49</td><td><center><input type="checkbox" id="AllBugsCheck" \
onClick="CopyCheckedStateToCheckButtons(this);" checked/></center></td></tr> +<tr \
style="font-weight:bold"><td class="SUMM_DESC">All Bugs</td><td \
class="Q">45</td><td><center><input type="checkbox" id="AllBugsCheck" \
onClick="CopyCheckedStateToCheckButtons(this);" checked/></center></td></tr>  \
<tr><th>API</th><th colspan=2></th></tr>  <tr><td class="SUMM_DESC">Argument with \
'nonnull' attribute passed null</td><td class="Q">1</td><td><center><input \
type="checkbox" onClick="ToggleDisplay(this,'bt_api_argument_with_nonnull_attribute_passed_null');" \
checked/></center></td></tr>  <tr><th>Dead store</th><th colspan=2></th></tr>
-<tr><td class="SUMM_DESC">Dead assignment</td><td \
class="Q">12</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_dead_store_dead_assignment');" \
checked/></center></td></tr> +<tr><td class="SUMM_DESC">Dead assignment</td><td \
class="Q">10</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_dead_store_dead_assignment');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Dead increment</td><td \
class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_dead_store_dead_increment');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Dead initialization</td><td \
class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_dead_store_dead_initialization');" \
checked/></center></td></tr>  <tr><th>Logic error</th><th colspan=2></th></tr>
 <tr><td class="SUMM_DESC">Array subscript is undefined</td><td \
class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_array_subscript_is_undefined');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Assigned value is garbage or \
undefined</td><td class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_assigned_value_is_garbage_or_undefined');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Called C++ object pointer is \
null</td><td class="Q">2</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_called_c++_object_pointer_is_null');" \
                checked/></center></td></tr>
-<tr><td class="SUMM_DESC">Dereference of null pointer</td><td \
class="Q">4</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_dereference_of_null_pointer');" \
checked/></center></td></tr> +<tr><td class="SUMM_DESC">Dereference of null \
pointer</td><td class="Q">2</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_dereference_of_null_pointer');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Division by zero</td><td \
class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_division_by_zero');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Out-of-bound array \
access</td><td class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_out-of-bound_array_access');" \
checked/></center></td></tr>  <tr><td class="SUMM_DESC">Result of operation is \
garbage or undefined</td><td class="Q">1</td><td><center><input type="checkbox" \
onClick="ToggleDisplay(this,'bt_logic_error_result_of_operation_is_garbage_or_undefined');" \
checked/></center></td></tr> @@ -106,17 +106,17 @@ function \
ToggleDisplay(CheckButton, ClassName) {  </tr></thead>
 <tbody>
 </tr>
+<tr class="bt_unix_api_allocator_sizeof_operand_mismatch"><td class="DESC">Unix \
API</td><td class="DESC">Allocator sizeof operand \
mismatch</td><td>core/tests/imgqsort/detectnoise/detectnoise.cpp</td><td \
class="DESC">main</td><td class="Q">93</td><td class="Q">1</td><td><a \
href="report-6f9b3a.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-6f9b3a.html" -->  </tr>
-<tr class="bt_unix_api_allocator_sizeof_operand_mismatch"><td class="DESC">Unix \
API</td><td class="DESC">Allocator sizeof operand \
mismatch</td><td>core/tests/imgqsort/detectnoise/detectnoise.cpp</td><td \
class="DESC">main</td><td class="Q">93</td><td class="Q">1</td><td><a \
                href="report-414ecb.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-414ecb.html" -->
 </tr>
 </tr>
 </tr>
 </tr>
+<tr class="bt_unix_api_allocator_sizeof_operand_mismatch"><td class="DESC">Unix \
API</td><td class="DESC">Allocator sizeof operand \
mismatch</td><td>core/tests/imgqsort/detectblur/detectblur.cpp</td><td \
class="DESC">main</td><td class="Q">99</td><td class="Q">1</td><td><a \
href="report-b3d07a.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-b3d07a.html" -->  </tr>
 </tr>
-<tr class="bt_unix_api_allocator_sizeof_operand_mismatch"><td class="DESC">Unix \
API</td><td class="DESC">Allocator sizeof operand \
mismatch</td><td>core/tests/imgqsort/detectblur/detectblur.cpp</td><td \
class="DESC">main</td><td class="Q">99</td><td class="Q">1</td><td><a \
                href="report-07fe1f.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-07fe1f.html" -->
 </tr>
 </tr>
 </tr>
@@ -135,11 +135,11 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
+<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic \
error</td><td class="DESC">Called C++ object pointer is \
null</td><td>core/tests/geolocation/geoiface/test_itemmarkertiler.cpp</td><td \
class="DESC">testMoveMarkers2</td><td class="Q">263</td><td class="Q">4</td><td><a \
href="report-6f4e9d.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-6f4e9d.html" -->  </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic \
error</td><td class="DESC">Called C++ object pointer is \
null</td><td>core/tests/geolocation/geoiface/test_itemmarkertiler.cpp</td><td \
class="DESC">testMoveMarkers2</td><td class="Q">263</td><td class="Q">4</td><td><a \
                href="report-fd9664.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-fd9664.html" -->
 </tr>
 </tr>
 </tr>
@@ -149,6 +149,8 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
+<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic \
error</td><td class="DESC">Called C++ object pointer is \
null</td><td>core/tests/geolocation/geoiface/test_itemmarkertiler.cpp</td><td \
class="DESC">testMoveMarkers1</td><td class="Q">216</td><td class="Q">4</td><td><a \
href="report-4a77aa.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-4a77aa.html" -->  </tr>
 </tr>
 </tr>
@@ -157,66 +159,60 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic \
error</td><td class="DESC">Called C++ object pointer is \
null</td><td>core/tests/geolocation/geoiface/test_itemmarkertiler.cpp</td><td \
class="DESC">testMoveMarkers1</td><td class="Q">216</td><td class="Q">4</td><td><a \
                href="report-c57862.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-c57862.html" -->
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">400</td><td \
                class="Q">1</td><td><a href="report-8a5ca9.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-8a5ca9.html" -->
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/assistants/printcreator/manager/advprinttask.cpp</td><td \
class="DESC">printPhotosToFile</td><td class="Q">262</td><td class="Q">1</td><td><a \
href="report-4e6aab.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-4e6aab.html" -->  </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">447</td><td class="Q">1</td><td><a \
                href="report-17105d.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-17105d.html" -->
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/assistants/printcreator/manager/advprinttask.cpp</td><td \
class="DESC">printPhotosToFile</td><td class="Q">262</td><td class="Q">1</td><td><a \
                href="report-2b9965.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-2b9965.html" -->
 </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">447</td><td class="Q">1</td><td><a \
href="report-1484ad.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-1484ad.html" -->  </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">445</td><td class="Q">1</td><td><a \
                href="report-f4df8e.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-f4df8e.html" -->
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">200</td><td \
                class="Q">1</td><td><a href="report-e5c799.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-e5c799.html" -->
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">334</td><td \
                class="Q">1</td><td><a href="report-4f83ca.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-4f83ca.html" -->
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">334</td><td \
class="Q">1</td><td><a href="report-aa98fa.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-aa98fa.html" -->  </tr>
 </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">200</td><td \
class="Q">1</td><td><a href="report-2cb6e1.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-2cb6e1.html" -->  </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">446</td><td class="Q">1</td><td><a \
href="report-52d75f.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-52d75f.html" -->  </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">400</td><td \
class="Q">1</td><td><a href="report-b9fe2b.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-b9fe2b.html" -->  </tr>
 </tr>
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">267</td><td \
                class="Q">1</td><td><a href="report-f55b73.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-f55b73.html" -->
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">spiralClockwiseTraversal</td><td class="Q">267</td><td \
class="Q">1</td><td><a href="report-04dfb1.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-04dfb1.html" -->  </tr>
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">555</td><td class="Q">1</td><td><a \
                href="report-b38098.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-b38098.html" -->
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/database/imgqsort/imgqsort.cpp</td><td \
class="DESC">noisedetector</td><td class="Q">558</td><td class="Q">1</td><td><a \
                href="report-63575f.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-63575f.html" -->
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/database/imgqsort/imgqsort.cpp</td><td \
class="DESC">noisedetector</td><td class="Q">559</td><td class="Q">1</td><td><a \
                href="report-26cd72.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-26cd72.html" -->
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/presentation/opengl/presentationkb.cpp</td><td \
class="DESC">~PresentationKB</td><td class="Q">312</td><td class="Q">1</td><td><a \
                href="report-982035.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-982035.html" -->
 </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">445</td><td class="Q">1</td><td><a \
href="report-2f6e59.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-2f6e59.html" -->  </tr>
 </tr>
 </tr>
 </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/presentation/opengl/presentationkb.cpp</td><td \
class="DESC">~PresentationKB</td><td class="Q">312</td><td class="Q">1</td><td><a \
href="report-e675ee.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-e675ee.html" -->  </tr>
+<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">555</td><td class="Q">1</td><td><a \
href="report-b3762f.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-b3762f.html" -->  </tr>
 </tr>
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_assignment"><td class="DESC">Dead store</td><td \
class="DESC">Dead assignment</td><td>core/utilities/geolocation/editor/kmlexport/kmlexport.cpp</td><td \
class="DESC">generate</td><td class="Q">446</td><td class="Q">1</td><td><a \
                href="report-101c98.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-101c98.html" -->
 </tr>
 </tr>
 </tr>
@@ -236,8 +232,6 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
-<tr class="bt_dead_store_dead_initialization"><td class="DESC">Dead store</td><td \
class="DESC">Dead initialization</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">855</td><td class="Q">1</td><td><a \
                href="report-a8d6f7.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-a8d6f7.html" -->
 </tr>
 </tr>
 </tr>
@@ -245,6 +239,8 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
+<tr class="bt_dead_store_dead_initialization"><td class="DESC">Dead store</td><td \
class="DESC">Dead initialization</td><td>core/libs/dimg/filters/transform/autocrop.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">855</td><td class="Q">1</td><td><a \
href="report-45cfba.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-45cfba.html" -->  </tr>
 </tr>
 </tr>
@@ -259,24 +255,20 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/dimg.cpp</td><td class="DESC">rotate</td><td \
class="Q">2453</td><td class="Q">14</td><td><a href="report-2af2bf.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-2af2bf.html" -->
 </tr>
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/dimg.cpp</td><td class="DESC">rotate</td><td \
class="Q">2453</td><td class="Q">14</td><td><a href="report-b16df8.html#EndPath">View \
Report</a></td> +<!-- REPORTBUG id="report-b16df8.html" -->
 </tr>
 </tr>
 </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">394</td><td class="Q">7</td><td><a \
                href="report-bdde48.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-bdde48.html" -->
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/dimg.cpp</td><td class="DESC">rotate</td><td \
class="Q">2431</td><td class="Q">14</td><td><a href="report-856068.html#EndPath">View \
Report</a></td> +<!-- REPORTBUG id="report-856068.html" -->
 </tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">319</td><td class="Q">6</td><td><a \
                href="report-6749c4.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-6749c4.html" -->
 </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic \
error</td><td class="DESC">Dereference of null \
pointer</td><td>core/libs/dimg/dimg.cpp</td><td class="DESC">rotate</td><td \
class="Q">2431</td><td class="Q">14</td><td><a href="report-e3aec3.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-e3aec3.html" -->
 </tr>
 </tr>
 </tr>
@@ -285,92 +277,92 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
class="Q">2</td><td><a href="report-b44fa4.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-b44fa4.html" -->  </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/queuemanager/main/queuemgrwindow.cpp</td><td \
class="DESC">queueManagerWindow</td><td class="Q">88</td><td class="Q">4</td><td><a \
href="report-75973d.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-75973d.html" -->  </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/htmlgallery/generator/gallerytheme.cpp</td><td \
class="DESC">getList</td><td class="Q">207</td><td class="Q">6</td><td><a \
href="report-945920.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-945920.html" -->  </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/htmlgallery/generator/gallerygenerator.cpp</td><td \
class="DESC">generateHTML</td><td class="Q">350</td><td class="Q">10</td><td><a \
href="report-d951fc.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-d951fc.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/lighttable/lighttablewindow.cpp</td><td \
class="DESC">lightTableWindow</td><td class="Q">39</td><td class="Q">4</td><td><a \
                href="report-62f63b.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-62f63b.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenSaving</td><td class="Q">198</td><td \
class="Q">2</td><td><a href="report-d3cb10.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-d3cb10.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
                class="Q">2</td><td><a href="report-c8bcff.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-c8bcff.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/imageeditor/main/imagewindow.cpp</td><td \
class="DESC">imageWindow</td><td class="Q">40</td><td class="Q">4</td><td><a \
href="report-4b9f00.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-4b9f00.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/htmlgallery/generator/gallerytheme.cpp</td><td \
class="DESC">getList</td><td class="Q">207</td><td class="Q">6</td><td><a \
                href="report-94982b.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-94982b.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/geolocation/geoiface/tiles/itemmarkertiler.cpp</td><td \
class="DESC">getTile</td><td class="Q">512</td><td class="Q">31</td><td><a \
href="report-d38fb4.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-d38fb4.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/imageeditor/main/imagewindow.cpp</td><td \
class="DESC">imageWindow</td><td class="Q">40</td><td class="Q">4</td><td><a \
                href="report-3496d4.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-3496d4.html" -->
 </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/imgqsort/detectnoise/detectnoise.cpp</td><td \
class="DESC">main</td><td class="Q">99</td><td class="Q">3</td><td><a \
                href="report-9d5bb8.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-9d5bb8.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
class="Q">2</td><td><a href="report-c038b4.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-c038b4.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">uploadPhoto</td><td class="Q">211</td><td class="Q">2</td><td><a \
                href="report-053c33.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-053c33.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/imgqsort/detectblur/detectblur.cpp</td><td \
class="DESC">main</td><td class="Q">103</td><td class="Q">3</td><td><a \
href="report-a0c540.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-a0c540.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">login</td><td class="Q">119</td><td class="Q">2</td><td><a \
                href="report-29cefc.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-29cefc.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">openAlbum</td><td class="Q">192</td><td class="Q">2</td><td><a \
href="report-4ec4cd.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-4ec4cd.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenSaving</td><td class="Q">198</td><td \
                class="Q">2</td><td><a href="report-b435e5.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-b435e5.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">loadAlbums</td><td class="Q">125</td><td class="Q">2</td><td><a \
href="report-ccbb3a.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-ccbb3a.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
                class="Q">2</td><td><a href="report-1cd406.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-1cd406.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
class="Q">2</td><td><a href="report-e8237c.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-e8237c.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
                class="Q">2</td><td><a href="report-b8d55b.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-b8d55b.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenLoading</td><td class="Q">174</td><td \
class="Q">2</td><td><a href="report-37c21d.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-37c21d.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">closeAlbum</td><td class="Q">205</td><td class="Q">3</td><td><a \
                href="report-6aee3a.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-6aee3a.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
class="Q">2</td><td><a href="report-6db20c.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-6db20c.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">openAlbum</td><td class="Q">192</td><td class="Q">2</td><td><a \
                href="report-b5cbf4.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-b5cbf4.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/imgqsort/detectnoise/detectnoise.cpp</td><td \
class="DESC">main</td><td class="Q">99</td><td class="Q">3</td><td><a \
href="report-d19535.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-d19535.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
                class="Q">2</td><td><a href="report-fca219.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-fca219.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
class="Q">2</td><td><a href="report-ff8fab.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-ff8fab.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/htmlgallery/generator/gallerygenerator.cpp</td><td \
class="DESC">generateHTML</td><td class="Q">350</td><td class="Q">10</td><td><a \
                href="report-ae50cb.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ae50cb.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">login</td><td class="Q">119</td><td class="Q">2</td><td><a \
href="report-7259a4.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-7259a4.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">createAlbum</td><td class="Q">131</td><td class="Q">2</td><td><a \
                href="report-ff7422.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ff7422.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
class="Q">2</td><td><a href="report-7d93f9.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-7d93f9.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/geolocation/mapsearches/gpsmarkertiler.cpp</td><td \
class="DESC">addMarkerToTileAndChildren</td><td class="Q">1036</td><td \
                class="Q">14</td><td><a href="report-c73731.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-c73731.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenSaving</td><td class="Q">198</td><td \
class="Q">2</td><td><a href="report-615b81.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-615b81.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/imgqsort/detectblur/detectblur.cpp</td><td \
class="DESC">main</td><td class="Q">103</td><td class="Q">3</td><td><a \
                href="report-fb99f3.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-fb99f3.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/lighttable/lighttablewindow.cpp</td><td \
class="DESC">lightTableWindow</td><td class="Q">39</td><td class="Q">4</td><td><a \
href="report-13f5ef.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-13f5ef.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
                class="Q">2</td><td><a href="report-bf508f.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-bf508f.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">uploadPhoto</td><td class="Q">211</td><td class="Q">2</td><td><a \
href="report-de6370.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-de6370.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
                class="Q">2</td><td><a href="report-bb074e.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-bb074e.html" -->
 </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
                class="Q">2</td><td><a href="report-aa88fd.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-aa88fd.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenLoading</td><td class="Q">174</td><td \
class="Q">2</td><td><a href="report-f3b4f1.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-f3b4f1.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenSaving</td><td class="Q">198</td><td \
                class="Q">2</td><td><a href="report-72348a.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-72348a.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
class="Q">2</td><td><a href="report-825dde.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-825dde.html" -->  </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">createAlbum</td><td class="Q">131</td><td class="Q">2</td><td><a \
href="report-e4dc2c.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-e4dc2c.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenLoading</td><td class="Q">174</td><td \
                class="Q">2</td><td><a href="report-4fadec.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-4fadec.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/geolocation/mapsearches/gpsmarkertiler.cpp</td><td \
class="DESC">addMarkerToTileAndChildren</td><td class="Q">1036</td><td \
class="Q">14</td><td><a href="report-05bb7a.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-05bb7a.html" -->  </tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">closeAlbum</td><td class="Q">205</td><td class="Q">3</td><td><a \
href="report-246064.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-246064.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/queuemanager/main/queuemgrwindow.cpp</td><td \
class="DESC">queueManagerWindow</td><td class="Q">88</td><td class="Q">4</td><td><a \
                href="report-500e69.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-500e69.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenLoading</td><td class="Q">227</td><td \
class="Q">2</td><td><a href="report-ff0b3f.html#EndPath">View Report</a></td> +<!-- \
REPORTBUG id="report-ff0b3f.html" -->  </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testDirectChildrenLoading</td><td class="Q">174</td><td \
                class="Q">2</td><td><a href="report-31b9e4.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-31b9e4.html" -->
 </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/assistants/webservices/rajce/rajcetalker.cpp</td><td \
class="DESC">loadAlbums</td><td class="Q">125</td><td class="Q">2</td><td><a \
                href="report-6a4a2e.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-6a4a2e.html" -->
 </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/utilities/geolocation/geoiface/tiles/itemmarkertiler.cpp</td><td \
class="DESC">getTile</td><td class="Q">512</td><td class="Q">31</td><td><a \
                href="report-e7b0ce.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-e7b0ce.html" -->
 </tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory Error</td><td \
class="DESC">Memory leak</td><td>core/tests/fileio/statesavingobjecttest.cpp</td><td \
class="DESC">testRecursiveChildrenSaving</td><td class="Q">265</td><td \
                class="Q">2</td><td><a href="report-8c8dc0.html#EndPath">View \
                Report</a></td>
-<!-- REPORTBUG id="report-8c8dc0.html" -->
 </tr>
 </tr>
 </tr>
@@ -384,6 +376,8 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
+<tr class="bt_logic_error_result_of_operation_is_garbage_or_undefined"><td \
class="DESC">Logic error</td><td class="DESC">Result of operation is garbage or \
undefined</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">446</td><td class="Q">9</td><td><a \
href="report-748462.html#EndPath">View Report</a></td> +<!-- REPORTBUG \
id="report-748462.html" -->  </tr>
 </tr>
 </tr>
@@ -394,12 +388,6 @@ function ToggleDisplay(CheckButton, ClassName) {
 </tr>
 </tr>
 </tr>
-<tr class="bt_logic_error_result_of_operation_is_garbage_or_undefined"><td \
class="DESC">Logic error</td><td class="DESC">Result of operation is garbage or \
undefined</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td><td \
class="DESC">startAnalyse</td><td class="Q">452</td><td class="Q">11</td><td><a \
                href="report-50e04b.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-50e04b.html" -->
-</tr>
-</tr>
-</tr>
-</tr>
 </tr>
 </tr>
 </tr>
diff --git a/static/reports/clang/master/report-f55b73.html \
b/static/reports/clang/master/report-04dfb1.html similarity index 100%
rename from static/reports/clang/master/report-f55b73.html
rename to static/reports/clang/master/report-04dfb1.html
diff --git a/static/reports/clang/master/report-c73731.html \
b/static/reports/clang/master/report-05bb7a.html similarity index 100%
rename from static/reports/clang/master/report-c73731.html
rename to static/reports/clang/master/report-05bb7a.html
diff --git a/static/reports/clang/master/report-62f63b.html \
b/static/reports/clang/master/report-13f5ef.html similarity index 100%
rename from static/reports/clang/master/report-62f63b.html
rename to static/reports/clang/master/report-13f5ef.html
diff --git a/static/reports/clang/master/report-17105d.html \
b/static/reports/clang/master/report-1484ad.html similarity index 100%
rename from static/reports/clang/master/report-17105d.html
rename to static/reports/clang/master/report-1484ad.html
diff --git a/static/reports/clang/master/report-6aee3a.html \
b/static/reports/clang/master/report-246064.html similarity index 100%
rename from static/reports/clang/master/report-6aee3a.html
rename to static/reports/clang/master/report-246064.html
diff --git a/static/reports/clang/master/report-26cd72.html \
b/static/reports/clang/master/report-26cd72.html deleted file mode 100644
index 9769a652..00000000
--- a/static/reports/clang/master/report-26cd72.html
+++ /dev/null
@@ -1,922 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp</title>
-<style type="text/css">
- body { color:#000000; background-color:#ffffff }
- body { font-family:Helvetica, sans-serif; font-size:10pt }
- h1 { font-size:14pt }
- .code { border-collapse:collapse; width:100%; }
- .code { font-family: "Monospace", monospace; font-size:10pt }
- .code { line-height: 1.2em }
- .comment { color: green; font-style: oblique }
- .keyword { color: blue }
- .string_literal { color: red }
- .directive { color: darkmagenta }
- .expansion { display: none; }
- .macro:hover .expansion { display: block; border: 2px solid #FF0000; padding: 2px; \
background-color:#FFF0F0; font-weight: normal;   -webkit-border-radius:5px;  \
-webkit-box-shadow:1px 1px 7px #000; position: absolute; top: -1em; left:10em; \
                z-index: 1 } 
- .macro { color: darkmagenta; background-color:LemonChiffon; position: relative }
- .num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
- .num { text-align:right; font-size:8pt }
- .num { color:#444444 }
- .line { padding-left: 1ex; border-left: 3px solid #ccc }
- .line { white-space: pre }
- .msg { -webkit-box-shadow:1px 1px 7px #000 }
- .msg { -webkit-border-radius:5px }
- .msg { font-family:Helvetica, sans-serif; font-size:8pt }
- .msg { float:left }
- .msg { padding:0.25em 1ex 0.25em 1ex }
- .msg { margin-top:10px; margin-bottom:10px }
- .msg { font-weight:bold }
- .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
- .msgT { padding:0x; spacing:0x }
- .msgEvent { background-color:#fff8b4; color:#000000 }
- .msgControl { background-color:#bbbbbb; color:#000000 }
- .mrange { background-color:#dfddf3 }
- .mrange { border-bottom:1px solid #6F9DBE }
- .PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
- .PathIndex { -webkit-border-radius:8px }
- .PathIndexEvent { background-color:#bfba87 }
- .PathIndexControl { background-color:#8c8c8c }
- .PathNav a { text-decoration:none; font-size: larger }
- .CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
- .CodeRemovalHint { background-color:#de1010 }
- .CodeRemovalHint { border-bottom:1px solid #6F9DBE }
- table.simpletable {
-   padding: 5px;
-   font-size:12pt;
-   margin:20px;
-   border-collapse: collapse; border-spacing: 0px;
- }
- td.rowname {
-   text-align:right; font-weight:bold; color:#444444;
-   padding-right:2ex; }
-</style>
-</head>
-<body>
-<!-- BUGDESC Value stored to 'stdStorePtr' is never read -->
-
-<!-- BUGTYPE Dead assignment -->
-
-<!-- BUGCATEGORY Dead store -->
-
-<!-- BUGFILE /mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp -->
-
-<!-- FILENAME imgqsort.cpp -->
-
-<!-- FUNCTIONNAME noisedetector -->
-
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 54a7bb397844a4640550d169d16bf14c -->
-
-<!-- BUGLINE 559 -->
-
-<!-- BUGCOLUMN 9 -->
-
-<!-- BUGPATHLENGTH 1 -->
-
-<!-- BUGMETAEND -->
-<!-- REPORTHEADER -->
-<h3>Bug Summary</h3>
-<table class="simpletable">
-<tr><td class="rowname">File:</td><td>core/libs/database/imgqsort/imgqsort.cpp</td></tr>
                
-<tr><td class="rowname">Location:</td><td><a href="#EndPath">line 559, column \
                9</a></td></tr>
-<tr><td class="rowname">Description:</td><td>Value stored to 'stdStorePtr' is never \
                read</td></tr>
-</table>
-<!-- REPORTSUMMARYEXTRA -->
-<h3>Annotated Source Code</h3>
-<table class="code">
-<tr><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* \
                ============================================================</span></td></tr>
                
-<tr><td class="num" id="LN2">2</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This \
                file is a part of digiKam project</span></td></tr>
-<tr><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* \
                http://www.digikam.org</span></td></tr>
-<tr><td class="num" id="LN5">5</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date    \
                : 25/08/2013</span></td></tr>
-<tr><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* \
                Description : Image Quality Sorter</span></td></tr>
-<tr><td class="num" id="LN8">8</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* \
Copyright (C) 2013-2018 by Gilles Caulier &lt;caulier dot gilles at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* \
Copyright (C) 2013-2014 by Gowtham Ashok &lt;gwty93 at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN11">11</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This \
                program is free software; you can redistribute it</span></td></tr>
-<tr><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* \
                and/or modify it under the terms of the GNU General</span></td></tr>
-<tr><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* \
                Public License as published by the Free Software \
                Foundation;</span></td></tr>
-<tr><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* \
                either version 2, or (at your option)</span></td></tr>
-<tr><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* any \
                later version.</span></td></tr>
-<tr><td class="num" id="LN17">17</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* This \
                program is distributed in the hope that it will be \
                useful,</span></td></tr>
-<tr><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* but \
                WITHOUT ANY WARRANTY; without even the implied warranty \
                of</span></td></tr>
-<tr><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* \
                MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See \
                the</span></td></tr>
-<tr><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* GNU \
                General Public License for more details.</span></td></tr>
-<tr><td class="num" id="LN22">22</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* \
                ============================================================ \
                */</span></td></tr>
-<tr><td class="num" id="LN24">24</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN25">25</td><td class="line"><span \
                class='directive'>#include "imgqsort.h"</span></td></tr>
-<tr><td class="num" id="LN26">26</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN27">27</td><td class="line"><span class='comment'>// C++ \
                includes</span></td></tr>
-<tr><td class="num" id="LN28">28</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN29">29</td><td class="line"><span \
                class='directive'>#include &lt;cmath&gt;</span></td></tr>
-<tr><td class="num" id="LN30">30</td><td class="line"><span \
                class='directive'>#include &lt;cfloat&gt;</span></td></tr>
-<tr><td class="num" id="LN31">31</td><td class="line"><span \
                class='directive'>#include &lt;cstdio&gt;</span></td></tr>
-<tr><td class="num" id="LN32">32</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// Qt \
                includes</span></td></tr>
-<tr><td class="num" id="LN34">34</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN35">35</td><td class="line"><span \
                class='directive'>#include &lt;QTextStream&gt;</span></td></tr>
-<tr><td class="num" id="LN36">36</td><td class="line"><span \
                class='directive'>#include &lt;QFile&gt;</span></td></tr>
-<tr><td class="num" id="LN37">37</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// Local \
                includes</span></td></tr>
-<tr><td class="num" id="LN39">39</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN40">40</td><td class="line"><span \
                class='directive'>#include "digikam_opencv.h"</span></td></tr>
-<tr><td class="num" id="LN41">41</td><td class="line"><span \
                class='directive'>#include "digikam_debug.h"</span></td></tr>
-<tr><td class="num" id="LN42">42</td><td class="line"><span \
                class='directive'>#include "mixerfilter.h"</span></td></tr>
-<tr><td class="num" id="LN43">43</td><td class="line"><span \
                class='directive'>#include "nrfilter.h"</span></td></tr>
-<tr><td class="num" id="LN44">44</td><td class="line"><span \
                class='directive'>#include "nrestimate.h"</span></td></tr>
-<tr><td class="num" id="LN45">45</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// To \
                switch on/off log trace file.</span></td></tr>
-<tr><td class="num" id="LN47">47</td><td class="line"><span class='comment'>// \
                #define TRACE 1</span></td></tr>
-<tr><td class="num" id="LN48">48</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN49">49</td><td class="line"><span \
                class='keyword'>using</span> <span class='keyword'>namespace</span> \
                cv;</td></tr>
-<tr><td class="num" id="LN50">50</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN51">51</td><td class="line"><span \
                class='keyword'>namespace</span> Digikam</td></tr>
-<tr><td class="num" id="LN52">52</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN53">53</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN54">54</td><td class="line"><span \
class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span \
class='expansion'>__attribute__((visibility("hidden")))</span></span> \
                ImgQSort::Private</td></tr>
-<tr><td class="num" id="LN55">55</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN56">56</td><td class="line"><span \
                class='keyword'>public</span>:</td></tr>
-<tr><td class="num" id="LN57">57</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN58">58</td><td class="line">    <span \
                class='keyword'>explicit</span> Private() :</td></tr>
-<tr><td class="num" id="LN59">59</td><td class="line">        clusterCount(30),      \
<span class='comment'>//used for k-means clustering algorithm in noise \
                detection</span></td></tr>
-<tr><td class="num" id="LN60">60</td><td class="line">        size(512)</td></tr>
-<tr><td class="num" id="LN61">61</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
                c++)</td></tr>
-<tr><td class="num" id="LN63">63</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN64">64</td><td class="line">            fimg[c] = \
                0;</td></tr>
-<tr><td class="num" id="LN65">65</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN66">66</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN67">67</td><td class="line">        <span \
                class='comment'>// Setting the default values</span></td></tr>
-<tr><td class="num" id="LN68">68</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN69">69</td><td class="line">        edgeThresh        = \
                1;</td></tr>
-<tr><td class="num" id="LN70">70</td><td class="line">        lowThreshold      = \
                0.4;</td></tr>
-<tr><td class="num" id="LN71">71</td><td class="line">        ratio             = \
                3;</td></tr>
-<tr><td class="num" id="LN72">72</td><td class="line">        kernel_size       = \
                3;</td></tr>
-<tr><td class="num" id="LN73">73</td><td class="line">        blurrejected      = \
                0.0;</td></tr>
-<tr><td class="num" id="LN74">74</td><td class="line">        blur              = \
                0.0;</td></tr>
-<tr><td class="num" id="LN75">75</td><td class="line">        acceptedThreshold = \
                0.0;</td></tr>
-<tr><td class="num" id="LN76">76</td><td class="line">        pendingThreshold  = \
                0.0;</td></tr>
-<tr><td class="num" id="LN77">77</td><td class="line">        rejectedThreshold = \
                0.0;</td></tr>
-<tr><td class="num" id="LN78">78</td><td class="line">        label             = \
                0;</td></tr>
-<tr><td class="num" id="LN79">79</td><td class="line">        running           = \
                <span class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN80">80</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN81">81</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN82">82</td><td class="line">    <span \
                class='keyword'>float</span>*               fimg[3];</td></tr>
-<tr><td class="num" id="LN83">83</td><td class="line">    <span \
                class='keyword'>const</span> uint           clusterCount;</td></tr>
-<tr><td class="num" id="LN84">84</td><td class="line">    <span \
class='keyword'>const</span> uint           size;              <span \
                class='comment'>// Size of squared original image.</span></td></tr>
-<tr><td class="num" id="LN85">85</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN86">86</td><td class="line">    Mat                  src;  \
                <span class='comment'>// Matrix of the original source \
                image</span></td></tr>
-<tr><td class="num" id="LN87">87</td><td class="line">    Mat                  \
src_gray;          <span class='comment'>// Matrix of the grayscaled source \
                image</span></td></tr>
-<tr><td class="num" id="LN88">88</td><td class="line">    Mat                  \
detected_edges;    <span class='comment'>// Matrix containing only edges in the \
                image</span></td></tr>
-<tr><td class="num" id="LN89">89</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN90">90</td><td class="line">    <span \
class='keyword'>int</span>                  edgeThresh;        <span \
class='comment'>// threshold above which we say that edges are present at a \
                point</span></td></tr>
-<tr><td class="num" id="LN91">91</td><td class="line">    <span \
class='keyword'>int</span>                  ratio;             <span \
class='comment'>// lower:upper threshold for canny edge detector \
                algorithm</span></td></tr>
-<tr><td class="num" id="LN92">92</td><td class="line">    <span \
                class='keyword'>int</span>                  kernel_size;</td></tr>
-<tr><td class="num" id="LN93">93</td><td class="line">    <span class='comment'>// \
                kernel size for the Sobel operations to be performed \
                internally</span></td></tr>
-<tr><td class="num" id="LN94">94</td><td class="line">    <span class='comment'>// \
                by the edge detector</span></td></tr>
-<tr><td class="num" id="LN95">95</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN96">96</td><td class="line">    <span \
                class='keyword'>double</span>               lowThreshold;</td></tr>
-<tr><td class="num" id="LN97">97</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN98">98</td><td class="line">    DImg                 \
                image;             <span class='comment'>// original \
                image</span></td></tr>
-<tr><td class="num" id="LN99">99</td><td class="line">    DImg                 \
neimage;           <span class='comment'>// noise estimation image[ for \
                color]</span></td></tr>
-<tr><td class="num" id="LN100">100</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN101">101</td><td class="line">    ImageQualitySettings \
                imq;</td></tr>
-<tr><td class="num" id="LN102">102</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN103">103</td><td class="line">    <span \
                class='keyword'>double</span>               blurrejected;</td></tr>
-<tr><td class="num" id="LN104">104</td><td class="line">    <span \
                class='keyword'>double</span>               blur;</td></tr>
-<tr><td class="num" id="LN105">105</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN106">106</td><td class="line">    <span \
                class='keyword'>double</span>               \
                acceptedThreshold;</td></tr>
-<tr><td class="num" id="LN107">107</td><td class="line">    <span \
                class='keyword'>double</span>               \
                pendingThreshold;</td></tr>
-<tr><td class="num" id="LN108">108</td><td class="line">    <span \
                class='keyword'>double</span>               \
                rejectedThreshold;</td></tr>
-<tr><td class="num" id="LN109">109</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN110">110</td><td class="line">    QString              \
                path;              <span class='comment'>// Path to host result \
                file</span></td></tr>
-<tr><td class="num" id="LN111">111</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN112">112</td><td class="line">    PickLabel*           \
                label;</td></tr>
-<tr><td class="num" id="LN113">113</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN114">114</td><td class="line">    <span \
class='keyword'>volatile</span> <span class='keyword'>bool</span>        \
                running;</td></tr>
-<tr><td class="num" id="LN115">115</td><td class="line">};</td></tr>
-<tr><td class="num" id="LN116">116</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN117">117</td><td class="line">ImgQSort::ImgQSort(<span \
class='keyword'>const</span> DImg&amp; img, <span class='keyword'>const</span> \
ImageQualitySettings&amp; imq, PickLabel* <span class='keyword'>const</span> \
                label)</td></tr>
-<tr><td class="num" id="LN118">118</td><td class="line">    : d(<span \
                class='keyword'>new</span> Private)</td></tr>
-<tr><td class="num" id="LN119">119</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN120">120</td><td class="line">    <span class='comment'>// \
                Reading settings from GUI</span></td></tr>
-<tr><td class="num" id="LN121">121</td><td class="line">    d-&gt;imq.detectBlur     \
                = imq.detectBlur;</td></tr>
-<tr><td class="num" id="LN122">122</td><td class="line">    d-&gt;imq.detectNoise    \
                = imq.detectNoise;</td></tr>
-<tr><td class="num" id="LN123">123</td><td class="line">    \
                d-&gt;imq.detectCompression  = imq.detectCompression;</td></tr>
-<tr><td class="num" id="LN124">124</td><td class="line">    \
                d-&gt;imq.detectOverexposure = imq.detectOverexposure;</td></tr>
-<tr><td class="num" id="LN125">125</td><td class="line">    d-&gt;imq.lowQRejected   \
                = imq.lowQRejected;</td></tr>
-<tr><td class="num" id="LN126">126</td><td class="line">    d-&gt;imq.mediumQPending \
                = imq.mediumQPending;</td></tr>
-<tr><td class="num" id="LN127">127</td><td class="line">    d-&gt;imq.highQAccepted  \
                = imq.highQAccepted;</td></tr>
-<tr><td class="num" id="LN128">128</td><td class="line">    d-&gt;imq.speed          \
                = imq.speed;</td></tr>
-<tr><td class="num" id="LN129">129</td><td class="line">    \
                d-&gt;imq.rejectedThreshold  = imq.rejectedThreshold;</td></tr>
-<tr><td class="num" id="LN130">130</td><td class="line">    \
                d-&gt;imq.pendingThreshold   = imq.pendingThreshold;</td></tr>
-<tr><td class="num" id="LN131">131</td><td class="line">    \
                d-&gt;imq.acceptedThreshold  = imq.acceptedThreshold;</td></tr>
-<tr><td class="num" id="LN132">132</td><td class="line">    d-&gt;imq.blurWeight     \
                = imq.blurWeight;</td></tr>
-<tr><td class="num" id="LN133">133</td><td class="line">    d-&gt;imq.noiseWeight    \
                = imq.noiseWeight;</td></tr>
-<tr><td class="num" id="LN134">134</td><td class="line">    \
                d-&gt;imq.compressionWeight  = imq.compressionWeight;</td></tr>
-<tr><td class="num" id="LN135">135</td><td class="line">    d-&gt;image              \
                = img;</td></tr>
-<tr><td class="num" id="LN136">136</td><td class="line">    d-&gt;neimage            \
                = img;</td></tr>
-<tr><td class="num" id="LN137">137</td><td class="line">    d-&gt;label              \
                = label;</td></tr>
-<tr><td class="num" id="LN138">138</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN139">139</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN140">140</td><td \
                class="line">ImgQSort::~ImgQSort()</td></tr>
-<tr><td class="num" id="LN141">141</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN142">142</td><td class="line">    <span \
                class='keyword'>delete</span> d;</td></tr>
-<tr><td class="num" id="LN143">143</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN144">144</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN145">145</td><td class="line"><span \
                class='keyword'>void</span> ImgQSort::startAnalyse()</td></tr>
-<tr><td class="num" id="LN146">146</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN147">147</td><td class="line">    <span class='comment'>// \
                For Noise Estimation</span></td></tr>
-<tr><td class="num" id="LN148">148</td><td class="line">    <span class='comment'>// \
Use the Top/Left corner of 256x256 pixels to analyze noise contents from \
                image.</span></td></tr>
-<tr><td class="num" id="LN149">149</td><td class="line">    <span class='comment'>// \
                This will speed-up computation time with OpenCV.</span></td></tr>
-<tr><td class="num" id="LN150">150</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN151">151</td><td class="line">    readImage();</td></tr>
-<tr><td class="num" id="LN152">152</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN153">153</td><td class="line">    <span \
                class='keyword'>double</span> blur             = 0.0;</td></tr>
-<tr><td class="num" id="LN154">154</td><td class="line">    <span \
                class='keyword'>short</span>  blur2            = 0;</td></tr>
-<tr><td class="num" id="LN155">155</td><td class="line">    <span \
                class='keyword'>double</span> noise            = 0.0;</td></tr>
-<tr><td class="num" id="LN156">156</td><td class="line">    <span \
                class='keyword'>int</span>    compressionlevel = 0;</td></tr>
-<tr><td class="num" id="LN157">157</td><td class="line">    <span \
                class='keyword'>float</span>  finalquality     = 0.0;</td></tr>
-<tr><td class="num" id="LN158">158</td><td class="line">    <span \
                class='keyword'>int</span>    exposurelevel    = 0;</td></tr>
-<tr><td class="num" id="LN159">159</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN160">160</td><td class="line">    <span class='comment'>// \
If blur option is selected in settings, run the blur detection \
                algorithms</span></td></tr>
-<tr><td class="num" id="LN161">161</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectBlur)</td></tr>
-<tr><td class="num" id="LN162">162</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN163">163</td><td class="line">        <span \
                class='comment'>// Returns blur value between 0 and \
                1.</span></td></tr>
-<tr><td class="num" id="LN164">164</td><td class="line">        <span \
                class='comment'>// If NaN is returned just assign \
                NoPickLabel</span></td></tr>
-<tr><td class="num" id="LN165">165</td><td class="line">        blur  = \
                blurdetector();</td></tr>
-<tr><td class="num" id="LN166">166</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
166, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Blur present in image is  : "</span> &lt;&lt; \
                blur;</td></tr>
-<tr><td class="num" id="LN167">167</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN168">168</td><td class="line">        <span \
                class='comment'>// Returns blur value between 1 and \
                32767.</span></td></tr>
-<tr><td class="num" id="LN169">169</td><td class="line">        <span \
                class='comment'>// If 1 is returned just assign \
                NoPickLabel</span></td></tr>
-<tr><td class="num" id="LN170">170</td><td class="line">        blur2 = \
                blurdetector2();</td></tr>
-<tr><td class="num" id="LN171">171</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
171, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Blur present in image [using LoG Filter] is : \
                "</span> &lt;&lt; blur2;</td></tr>
-<tr><td class="num" id="LN172">172</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN173">173</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN174">174</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN175">175</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN176">176</td><td class="line">        <span \
class='comment'>// Some images give very low noise value. Assign NoPickLabel in that \
                case.</span></td></tr>
-<tr><td class="num" id="LN177">177</td><td class="line">        <span \
                class='comment'>// Returns noise value between 0 and \
                1.</span></td></tr>
-<tr><td class="num" id="LN178">178</td><td class="line">        noise = \
                noisedetector();</td></tr>
-<tr><td class="num" id="LN179">179</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
179, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Noise present in image is : "</span> &lt;&lt; \
                noise;</td></tr>
-<tr><td class="num" id="LN180">180</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN181">181</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN182">182</td><td class="line">    <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectCompression)</td></tr>
-<tr><td class="num" id="LN183">183</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN184">184</td><td class="line">        <span \
                class='comment'>// Returns number of blocks in the \
                image.</span></td></tr>
-<tr><td class="num" id="LN185">185</td><td class="line">        compressionlevel = \
                compressiondetector();</td></tr>
-<tr><td class="num" id="LN186">186</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
186, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of compression artifacts present in image is : \
                "</span> &lt;&lt; compressionlevel;</td></tr>
-<tr><td class="num" id="LN187">187</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN188">188</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN189">189</td><td class="line">    <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectOverexposure)</td></tr>
-<tr><td class="num" id="LN190">190</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN191">191</td><td class="line">        <span \
                class='comment'>// Returns if there is overexposure in the \
                image</span></td></tr>
-<tr><td class="num" id="LN192">192</td><td class="line">        exposurelevel = \
                exposureamount();</td></tr>
-<tr><td class="num" id="LN193">193</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
193, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Exposure level present in image is : "</span> &lt;&lt; \
                exposurelevel;</td></tr>
-<tr><td class="num" id="LN194">194</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN195">195</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN196">196</td><td class="line"><span \
                class='directive'>#ifdef TRACE</span></td></tr>
-<tr><td class="num" id="LN197">197</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN198">198</td><td class="line">    QFile filems(<span \
                class='string_literal'>"imgqsortresult.txt"</span>);</td></tr>
-<tr><td class="num" id="LN199">199</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN200">200</td><td class="line">    <span \
class='keyword'>if</span> (filems.open(QIODevice::Append | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN201">201</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN202">202</td><td class="line">        QTextStream \
                oms(&amp;filems);</td></tr>
-<tr><td class="num" id="LN203">203</td><td class="line">        oms &lt;&lt; <span \
class='string_literal'>"File:"</span> &lt;&lt; d-&gt;image.originalFilePath() \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN204">204</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN205">205</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectBlur)</td></tr>
-<tr><td class="num" id="LN206">206</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN207">207</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Blur Present:"</span> &lt;&lt; blur &lt;&lt; \
                endl;</td></tr>
-<tr><td class="num" id="LN208">208</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Blur Present(using LoG filter):"</span>&lt;&lt; blur2 \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN209">209</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN210">210</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN211">211</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN212">212</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN213">213</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Noise Present:"</span> &lt;&lt; noise &lt;&lt; \
                endl;</td></tr>
-<tr><td class="num" id="LN214">214</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN215">215</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN216">216</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectCompression)</td></tr>
-<tr><td class="num" id="LN217">217</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN218">218</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Compression Present:"</span> &lt;&lt; compressionlevel \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN219">219</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN220">220</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN221">221</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectOverexposure)</td></tr>
-<tr><td class="num" id="LN222">222</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN223">223</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Exposure Present:"</span> &lt;&lt; exposurelevel \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN224">224</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN225">225</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN226">226</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN227">227</td><td class="line"><span \
                class='directive'>#endif // TRACE</span></td></tr>
-<tr><td class="num" id="LN228">228</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN229">229</td><td class="line">    <span class='comment'>// \
                Calculating finalquality</span></td></tr>
-<tr><td class="num" id="LN230">230</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN231">231</td><td class="line">    <span class='comment'>// \
                All the results to have a range of 1 to 100.</span></td></tr>
-<tr><td class="num" id="LN232">232</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN233">233</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN234">234</td><td class="line">        <span \
class='keyword'>float</span> finalblur        = (blur*100)  + \
                ((blur2/32767)*100);</td></tr>
-<tr><td class="num" id="LN235">235</td><td class="line">        <span \
                class='keyword'>float</span> finalnoise       = noise*100;</td></tr>
-<tr><td class="num" id="LN236">236</td><td class="line">        <span \
class='keyword'>float</span> finalcompression = (compressionlevel / 1024) * 100; \
                <span class='comment'>// we are processing 1024 pixels size \
                image</span></td></tr>
-<tr><td class="num" id="LN237">237</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN238">238</td><td class="line">        finalquality         \
                = finalblur*d-&gt;imq.blurWeight   +</td></tr>
-<tr><td class="num" id="LN239">239</td><td class="line">                             \
                finalnoise*d-&gt;imq.noiseWeight +</td></tr>
-<tr><td class="num" id="LN240">240</td><td class="line">                             \
                finalcompression*d-&gt;imq.compressionWeight;</td></tr>
-<tr><td class="num" id="LN241">241</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN242">242</td><td class="line">        finalquality         \
                = finalquality / 100;</td></tr>
-<tr><td class="num" id="LN243">243</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN244">244</td><td class="line">        <span \
                class='comment'>// Assigning PickLabels</span></td></tr>
-<tr><td class="num" id="LN245">245</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN246">246</td><td class="line">        <span \
                class='keyword'>if</span> (finalquality == 0.0)</td></tr>
-<tr><td class="num" id="LN247">247</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN248">248</td><td class="line">            <span \
class='comment'>// Algorithms have not been run. So return \
                noPickLabel</span></td></tr>
-<tr><td class="num" id="LN249">249</td><td class="line">            *d-&gt;label = \
                NoPickLabel;</td></tr>
-<tr><td class="num" id="LN250">250</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN251">251</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (finalquality &lt; \
                d-&gt;imq.rejectedThreshold)</td></tr>
-<tr><td class="num" id="LN252">252</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN253">253</td><td class="line">            *d-&gt;label = \
                RejectedLabel;</td></tr>
-<tr><td class="num" id="LN254">254</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN255">255</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (finalquality &gt; \
d-&gt;imq.rejectedThreshold &amp;&amp; finalquality &lt; \
                d-&gt;imq.acceptedThreshold)</td></tr>
-<tr><td class="num" id="LN256">256</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN257">257</td><td class="line">            *d-&gt;label = \
                PendingLabel;</td></tr>
-<tr><td class="num" id="LN258">258</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN259">259</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN260">260</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN261">261</td><td class="line">            *d-&gt;label = \
                AcceptedLabel;</td></tr>
-<tr><td class="num" id="LN262">262</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN263">263</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN264">264</td><td class="line">    <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN265">265</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN266">266</td><td class="line">        *d-&gt;label = \
                NoPickLabel;</td></tr>
-<tr><td class="num" id="LN267">267</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN268">268</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN269">269</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN270">270</td><td class="line"><span \
                class='keyword'>void</span> ImgQSort::cancelAnalyse()</td></tr>
-<tr><td class="num" id="LN271">271</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN272">272</td><td class="line">    d-&gt;running = <span \
                class='keyword'>false</span>;</td></tr>
-<tr><td class="num" id="LN273">273</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN274">274</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN275">275</td><td class="line"><span \
class='keyword'>void</span> ImgQSort::readImage() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN276">276</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN277">277</td><td class="line">    MixerContainer \
                settings;</td></tr>
-<tr><td class="num" id="LN278">278</td><td class="line">    settings.bMonochrome = \
                <span class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN279">279</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN280">280</td><td class="line">    MixerFilter \
                mixer(&amp;d-&gt;image, 0L, settings);</td></tr>
-<tr><td class="num" id="LN281">281</td><td class="line">    \
                mixer.startFilterDirectly();</td></tr>
-<tr><td class="num" id="LN282">282</td><td class="line">    \
                d-&gt;image.putImageData(mixer.getTargetImage().bits());</td></tr>
-<tr><td class="num" id="LN283">283</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN284">284</td><td class="line">    d-&gt;src      = \
Mat(d-&gt;image.numPixels(), 3, <span class='macro'>CV_8UC3<span \
class='expansion'>(((0) &amp; ((1 &lt;&lt; 3) - 1)) + (((3)-1) &lt;&lt; \
3))</span></span>); <span class='comment'>// Create a matrix containing the pixel \
                values of original image</span></td></tr>
-<tr><td class="num" id="LN285">285</td><td class="line">    d-&gt;src_gray = \
Mat(d-&gt;image.numPixels(), 1, <span class='macro'>CV_8UC1<span \
class='expansion'>(((0) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
3))</span></span>); <span class='comment'>// Create a matrix containing the pixel \
                values of grayscaled image</span></td></tr>
-<tr><td class="num" id="LN286">286</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN287">287</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN288">288</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN289">289</td><td class="line">        DColor \
                col;</td></tr>
-<tr><td class="num" id="LN290">290</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN291">291</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0; d-&gt;running \
                &amp;&amp; (c &lt; 3); c++)</td></tr>
-<tr><td class="num" id="LN292">292</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN293">293</td><td class="line">            d-&gt;fimg[c] = \
<span class='keyword'>new</span> <span \
                class='keyword'>float</span>[d-&gt;neimage.numPixels()];</td></tr>
-<tr><td class="num" id="LN294">294</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN295">295</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN296">296</td><td class="line">        <span \
                class='keyword'>int</span> j = 0;</td></tr>
-<tr><td class="num" id="LN297">297</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN298">298</td><td class="line">        <span \
class='keyword'>for</span> (uint y = 0; d-&gt;running &amp;&amp; (y &lt; \
                d-&gt;neimage.height()); y++)</td></tr>
-<tr><td class="num" id="LN299">299</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN300">300</td><td class="line">            <span \
class='keyword'>for</span> (uint x = 0; d-&gt;running &amp;&amp; (x &lt; \
                d-&gt;neimage.width()); x++)</td></tr>
-<tr><td class="num" id="LN301">301</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN302">302</td><td class="line">                col          \
                = d-&gt;neimage.getPixelColor(x, y);</td></tr>
-<tr><td class="num" id="LN303">303</td><td class="line">                \
                d-&gt;fimg[0][j] = col.red();</td></tr>
-<tr><td class="num" id="LN304">304</td><td class="line">                \
                d-&gt;fimg[1][j] = col.green();</td></tr>
-<tr><td class="num" id="LN305">305</td><td class="line">                \
                d-&gt;fimg[2][j] = col.blue();</td></tr>
-<tr><td class="num" id="LN306">306</td><td class="line">                \
                j++;</td></tr>
-<tr><td class="num" id="LN307">307</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN308">308</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN309">309</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN310">310</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN311">311</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN312">312</td><td class="line"><span \
class='keyword'>void</span> ImgQSort::CannyThreshold(<span \
class='keyword'>int</span>, <span class='keyword'>void</span>*) <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN313">313</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN314">314</td><td class="line">    <span class='comment'>// \
                Reduce noise with a kernel 3x3.</span></td></tr>
-<tr><td class="num" id="LN315">315</td><td class="line">    blur(d-&gt;src_gray, \
                d-&gt;detected_edges, Size(3,3));</td></tr>
-<tr><td class="num" id="LN316">316</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN317">317</td><td class="line">    <span class='comment'>// \
                Canny detector.</span></td></tr>
-<tr><td class="num" id="LN318">318</td><td class="line">    \
Canny(d-&gt;detected_edges, d-&gt;detected_edges, d-&gt;lowThreshold, \
                d-&gt;lowThreshold*d-&gt;ratio,d-&gt; kernel_size);</td></tr>
-<tr><td class="num" id="LN319">319</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN320">320</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN321">321</td><td class="line"><span \
class='keyword'>double</span> ImgQSort::blurdetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN322">322</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN323">323</td><td class="line">    d-&gt;lowThreshold   = \
                0.4;</td></tr>
-<tr><td class="num" id="LN324">324</td><td class="line">    d-&gt;ratio          = \
                3;</td></tr>
-<tr><td class="num" id="LN325">325</td><td class="line">    <span \
                class='keyword'>double</span> maxval     = 0.0;</td></tr>
-<tr><td class="num" id="LN326">326</td><td class="line">    \
                ImgQSort::CannyThreshold(0, 0);</td></tr>
-<tr><td class="num" id="LN327">327</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN328">328</td><td class="line">    <span \
                class='keyword'>double</span> average    = \
                mean(d-&gt;detected_edges)[0];</td></tr>
-<tr><td class="num" id="LN329">329</td><td class="line">    <span \
class='keyword'>int</span>* <span class='keyword'>const</span> maxIdx = <span \
class='keyword'>new</span> <span class='keyword'>int</span>[<span \
                class='keyword'>sizeof</span>(d-&gt;detected_edges)];</td></tr>
-<tr><td class="num" id="LN330">330</td><td class="line">    \
                minMaxIdx(d-&gt;detected_edges, 0, &amp;maxval, 0, maxIdx);</td></tr>
-<tr><td class="num" id="LN331">331</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN332">332</td><td class="line">    <span \
                class='keyword'>double</span> blurresult = average / \
                maxval;</td></tr>
-<tr><td class="num" id="LN333">333</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN334">334</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
334, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The average of the edge intensity is "</span> &lt;&lt; \
                average;</td></tr>
-<tr><td class="num" id="LN335">335</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
335, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The maximum of the edge intensity is "</span> &lt;&lt; \
                maxval;</td></tr>
-<tr><td class="num" id="LN336">336</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
336, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The result of the edge intensity is  "</span> &lt;&lt; \
                blurresult;</td></tr>
-<tr><td class="num" id="LN337">337</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN338">338</td><td class="line">    <span \
                class='keyword'>delete</span> [] maxIdx;</td></tr>
-<tr><td class="num" id="LN339">339</td><td class="line">    <span \
                class='keyword'>return</span> blurresult;</td></tr>
-<tr><td class="num" id="LN340">340</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN341">341</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN342">342</td><td class="line"><span \
class='keyword'>short</span> ImgQSort::blurdetector2() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN343">343</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN344">344</td><td class="line">    <span class='comment'>// \
                Algorithm using Laplacian of Gaussian Filter to detect \
                blur.</span></td></tr>
-<tr><td class="num" id="LN345">345</td><td class="line">    Mat out;</td></tr>
-<tr><td class="num" id="LN346">346</td><td class="line">    Mat \
                noise_free;</td></tr>
-<tr><td class="num" id="LN347">347</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
347, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Algorithm using LoG Filter \
                started"</span>;</td></tr>
-<tr><td class="num" id="LN348">348</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN349">349</td><td class="line">    <span class='comment'>// \
                To remove noise from the image</span></td></tr>
-<tr><td class="num" id="LN350">350</td><td class="line">    \
                GaussianBlur(d-&gt;src_gray, noise_free, Size(3,3), 0, 0, \
                BORDER_DEFAULT);</td></tr>
-<tr><td class="num" id="LN351">351</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN352">352</td><td class="line">    <span class='comment'>// \
                Aperture size of 1 corresponds to the correct matrix</span></td></tr>
-<tr><td class="num" id="LN353">353</td><td class="line">    <span \
                class='keyword'>int</span> kernel_size = 3;</td></tr>
-<tr><td class="num" id="LN354">354</td><td class="line">    <span \
                class='keyword'>int</span> scale       = 1;</td></tr>
-<tr><td class="num" id="LN355">355</td><td class="line">    <span \
                class='keyword'>int</span> delta       = 0;</td></tr>
-<tr><td class="num" id="LN356">356</td><td class="line">    <span \
class='keyword'>int</span> ddepth      = <span class='macro'>CV_16S<span \
                class='expansion'>3</span></span>;</td></tr>
-<tr><td class="num" id="LN357">357</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN358">358</td><td class="line">    Laplacian(noise_free, \
                out, ddepth, kernel_size, scale, delta, BORDER_DEFAULT);</td></tr>
-<tr><td class="num" id="LN359">359</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN360">360</td><td class="line">    <span class='comment'>// \
                noise_free:  The input image without noise.</span></td></tr>
-<tr><td class="num" id="LN361">361</td><td class="line">    <span class='comment'>// \
                out:         Destination (output) image</span></td></tr>
-<tr><td class="num" id="LN362">362</td><td class="line">    <span class='comment'>// \
ddepth:      Depth of the destination image. Since our input is CV_8U we define \
                ddepth = CV_16S to avoid overflow</span></td></tr>
-<tr><td class="num" id="LN363">363</td><td class="line">    <span class='comment'>// \
kernel_size: The kernel size of the Sobel operator to be applied internally. We use 3 \
                ihere</span></td></tr>
-<tr><td class="num" id="LN364">364</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN365">365</td><td class="line">    <span \
                class='keyword'>short</span> maxLap = -32767;</td></tr>
-<tr><td class="num" id="LN366">366</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN367">367</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; out.rows; \
                i++)</td></tr>
-<tr><td class="num" id="LN368">368</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN369">369</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; out.cols; \
                j++)</td></tr>
-<tr><td class="num" id="LN370">370</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN371">371</td><td class="line">            <span \
class='keyword'>short</span> value = out.at&lt;<span \
                class='keyword'>short</span>&gt;(i,j);</td></tr>
-<tr><td class="num" id="LN372">372</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN373">373</td><td class="line">            <span \
                class='keyword'>if</span> (value &gt; maxLap)</td></tr>
-<tr><td class="num" id="LN374">374</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN375">375</td><td class="line">                maxLap = \
                value ;</td></tr>
-<tr><td class="num" id="LN376">376</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN377">377</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN378">378</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN379">379</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN380">380</td><td class="line">    <span \
                class='keyword'>return</span> maxLap;</td></tr>
-<tr><td class="num" id="LN381">381</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN383">383</td><td class="line"><span \
class='keyword'>double</span> ImgQSort::noisedetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN384">384</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN385">385</td><td class="line">    <span \
                class='keyword'>double</span> noiseresult = 0.0;</td></tr>
-<tr><td class="num" id="LN386">386</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN387">387</td><td class="line">    <span \
class='comment'>//--convert fimg to \
CvMat*-------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN388">388</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN389">389</td><td class="line">    <span class='comment'>// \
                Convert the image into YCrCb color model.</span></td></tr>
-<tr><td class="num" id="LN390">390</td><td class="line">    \
                NRFilter::srgb2ycbcr(d-&gt;fimg, \
                d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN391">391</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN392">392</td><td class="line">    <span class='comment'>// \
                One dimensional CvMat which stores the image.</span></td></tr>
-<tr><td class="num" id="LN393">393</td><td class="line">    CvMat* points    = \
cvCreateMat(d-&gt;neimage.numPixels(), 3, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN394">394</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN395">395</td><td class="line">    <span class='comment'>// \
                Matrix to store the index of the clusters.</span></td></tr>
-<tr><td class="num" id="LN396">396</td><td class="line">    CvMat* clusters  = \
cvCreateMat(d-&gt;neimage.numPixels(), 1, <span class='macro'>CV_32SC1<span \
class='expansion'>(((4) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN397">397</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN398">398</td><td class="line">    <span class='comment'>// \
Pointer variable to handle the CvMat* points (the image in CvMat \
                format).</span></td></tr>
-<tr><td class="num" id="LN399">399</td><td class="line">    <span \
class='keyword'>float</span>* pointsPtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(points-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN400">400</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN401">401</td><td class="line">    <span \
class='keyword'>for</span> (uint x=0 ; d-&gt;running &amp;&amp; (x &lt; \
                d-&gt;neimage.numPixels()) ; x++)</td></tr>
-<tr><td class="num" id="LN402">402</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN403">403</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> y=0 ; d-&gt;running \
                &amp;&amp; (y &lt; 3) ; y++)</td></tr>
-<tr><td class="num" id="LN404">404</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN405">405</td><td class="line">            *pointsPtr++ = \
                (<span class='keyword'>float</span>)d-&gt;fimg[y][x];</td></tr>
-<tr><td class="num" id="LN406">406</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN407">407</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN408">408</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN409">409</td><td class="line">    <span class='comment'>// \
                Array to store the centers of the clusters.</span></td></tr>
-<tr><td class="num" id="LN410">410</td><td class="line">    CvArr* centers = \
                0;</td></tr>
-<tr><td class="num" id="LN411">411</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN412">412</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
412, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Everything ready for the cvKmeans2 or as it seems \
                to"</span>;</td></tr>
-<tr><td class="num" id="LN413">413</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN414">414</td><td class="line">    <span \
class='comment'>//-- KMEANS \
---------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN415">415</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN416">416</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN417">417</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN418">418</td><td class="line">        cvKMeans2(points, \
                d-&gt;clusterCount, clusters,</td></tr>
-<tr><td class="num" id="LN419">419</td><td class="line">                  \
cvTermCriteria(<span class='macro'>CV_TERMCRIT_EPS<span \
class='expansion'>2</span></span> + <span class='macro'>CV_TERMCRIT_ITER<span \
                class='expansion'>1</span></span>, 10, 1.0), 3, 0, 0, centers, \
                0);</td></tr>
-<tr><td class="num" id="LN420">420</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN421">421</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN422">422</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
422, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"cvKmeans2 successfully run"</span>;</td></tr>
-<tr><td class="num" id="LN423">423</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN424">424</td><td class="line">    <span \
class='comment'>//-- Divide into cluster-&gt;columns, sample-&gt;rows, in matrix \
                standard deviation ---------------------------</span></td></tr>
-<tr><td class="num" id="LN425">425</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN426">426</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rowPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN427">427</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN428">428</td><td class="line">    <span class='comment'>// \
The row position array would just make the hold the number of elements in each \
                cluster.</span></td></tr>
-<tr><td class="num" id="LN429">429</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN430">430</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN431">431</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN432">432</td><td class="line">        <span \
                class='comment'>// Initializing the cluster count \
                array.</span></td></tr>
-<tr><td class="num" id="LN433">433</td><td class="line">        rowPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN434">434</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN435">435</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN436">436</td><td class="line">    <span \
                class='keyword'>int</span> rowIndex, columnIndex;</td></tr>
-<tr><td class="num" id="LN437">437</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN438">438</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;neimage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN439">439</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN440">440</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN441">441</td><td class="line">        \
                rowPosition[columnIndex]++;</td></tr>
-<tr><td class="num" id="LN442">442</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN443">443</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN444">444</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
444, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"array indexed, and ready to find \
                maximum"</span>;</td></tr>
-<tr><td class="num" id="LN445">445</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN446">446</td><td class="line">    <span \
class='comment'>//-- Finding maximum of the rowPosition array \
                ------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN447">447</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN448">448</td><td class="line">    <span \
                class='keyword'>int</span> max = rowPosition[0];</td></tr>
-<tr><td class="num" id="LN449">449</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN450">450</td><td class="line">    <span \
class='keyword'>for</span> (uint i=1 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN451">451</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN452">452</td><td class="line">        <span \
                class='keyword'>if</span> (rowPosition[i] &gt; max)</td></tr>
-<tr><td class="num" id="LN453">453</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN454">454</td><td class="line">            max = \
                rowPosition[i];</td></tr>
-<tr><td class="num" id="LN455">455</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN456">456</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN457">457</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN458">458</td><td class="line">    QString \
                maxString;</td></tr>
-<tr><td class="num" id="LN459">459</td><td class="line">    \
                maxString.append(QString::number(max));</td></tr>
-<tr><td class="num" id="LN460">460</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN461">461</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
461, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; \
QString::fromUtf8(<span class='string_literal'>"maximum declared = \
                %1"</span>).arg(maxString);</td></tr>
-<tr><td class="num" id="LN462">462</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN463">463</td><td class="line">    <span \
class='comment'>//-- Divide and conquer \
---------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN464">464</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN465">465</td><td class="line">    CvMat* sd = 0;</td></tr>
-<tr><td class="num" id="LN466">466</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN467">467</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN468">468</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN469">469</td><td class="line">        sd = \
cvCreateMat(max, (d-&gt;clusterCount * points-&gt;cols), <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN470">470</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN471">471</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN472">472</td><td class="line">    <span \
class='comment'>//-- Initialize the rowPosition array \
                -------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN473">473</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN474">474</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN475">475</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN476">476</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN477">477</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN478">478</td><td class="line">        rPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN479">479</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN480">480</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN481">481</td><td class="line">    <span \
                class='keyword'>float</span>* ptr = 0;</td></tr>
-<tr><td class="num" id="LN482">482</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN483">483</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
483, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"The rowPosition array is \
                ready!"</span>;</td></tr>
-<tr><td class="num" id="LN484">484</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN485">485</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;neimage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN486">486</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN487">487</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN488">488</td><td class="line">        rowIndex    = \
                rPosition[columnIndex];</td></tr>
-<tr><td class="num" id="LN489">489</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN490">490</td><td class="line">        <span \
                class='comment'>// Moving to the right row.</span></td></tr>
-<tr><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN492">492</td><td class="line">        ptr         = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(sd-&gt;data.ptr + \
                rowIndex*(sd-&gt;step));</td></tr>
-<tr><td class="num" id="LN493">493</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN494">494</td><td class="line">        <span \
                class='comment'>// Moving to the right column.</span></td></tr>
-<tr><td class="num" id="LN495">495</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN496">496</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; columnIndex) ; j++)</td></tr>
-<tr><td class="num" id="LN497">497</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN498">498</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z=0 ; d-&gt;running \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN499">499</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN500">500</td><td class="line">                \
                ptr++;</td></tr>
-<tr><td class="num" id="LN501">501</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN502">502</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN503">503</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN504">504</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z=0 ; d-&gt;running \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN505">505</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN506">506</td><td class="line">            *ptr++ = \
                cvGet2D(points, i, z).val[0];</td></tr>
-<tr><td class="num" id="LN507">507</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN508">508</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN509">509</td><td class="line">        \
                rPosition[columnIndex] = rPosition[columnIndex] + 1;</td></tr>
-<tr><td class="num" id="LN510">510</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN511">511</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN512">512</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
512, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"sd matrix creation over!"</span>;</td></tr>
-<tr><td class="num" id="LN513">513</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN514">514</td><td class="line">    <span \
class='comment'>//-- This part of the code would involve the sd matrix and make the \
                mean and the std of the data -------------</span></td></tr>
-<tr><td class="num" id="LN515">515</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN516">516</td><td class="line">    CvScalar std;</td></tr>
-<tr><td class="num" id="LN517">517</td><td class="line">    CvScalar mean;</td></tr>
-<tr><td class="num" id="LN518">518</td><td class="line">    CvMat*   meanStore    = \
                0;</td></tr>
-<tr><td class="num" id="LN519">519</td><td class="line">    CvMat*   stdStore     = \
                0;</td></tr>
-<tr><td class="num" id="LN520">520</td><td class="line">    <span \
                class='keyword'>float</span>*   meanStorePtr = 0;</td></tr>
-<tr><td class="num" id="LN521">521</td><td class="line">    <span \
                class='keyword'>float</span>*   stdStorePtr  = 0;</td></tr>
-<tr><td class="num" id="LN522">522</td><td class="line">    <span \
class='keyword'>int</span>      totalcount   = 0; <span class='comment'>// Number of \
                non-empty clusters.</span></td></tr>
-<tr><td class="num" id="LN523">523</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN524">524</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN525">525</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN526">526</td><td class="line">        meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN527">527</td><td class="line">        stdStore     = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN528">528</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN529">529</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN530">530</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN531">531</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN532">532</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i=0 ; d-&gt;running \
                &amp;&amp; (i &lt; sd-&gt;cols) ; i++)</td></tr>
-<tr><td class="num" id="LN533">533</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN534">534</td><td class="line">        <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
                &gt;= 1))</td></tr>
-<tr><td class="num" id="LN535">535</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN536">536</td><td class="line">            CvMat* \
workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN537">537</td><td class="line">            ptr              \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN538">538</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN539">539</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; rowPosition[(i / (points-&gt;cols))]) ; \
                j++)</td></tr>
-<tr><td class="num" id="LN540">540</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN541">541</td><td class="line">                *ptr++ = \
                cvGet2D(sd, j, i).val[0];</td></tr>
-<tr><td class="num" id="LN542">542</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN543">543</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN544">544</td><td class="line">            \
                cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr>
-<tr><td class="num" id="LN545">545</td><td class="line">            *meanStorePtr++ \
                = (<span class='keyword'>float</span>)mean.val[0];</td></tr>
-<tr><td class="num" id="LN546">546</td><td class="line">            *stdStorePtr++  \
                = (<span class='keyword'>float</span>)std.val[0];</td></tr>
-<tr><td class="num" id="LN547">547</td><td class="line">            \
                totalcount++;</td></tr>
-<tr><td class="num" id="LN548">548</td><td class="line">            \
                cvReleaseMat(&amp;workingArr);</td></tr>
-<tr><td class="num" id="LN549">549</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN550">550</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN551">551</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN552">552</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
552, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Make the mean and the std of the \
                data"</span>;</td></tr>
-<tr><td class="num" id="LN553">553</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN554">554</td><td class="line">    <span class='comment'>// \
-----------------------------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN555">555</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN556">556</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN557">557</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN558">558</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN559">559</td><td class="line">        stdStorePtr  = <span \
class="mrange"><span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr)</span>;</td></tr>
                
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" \
                style="margin-left:9ex">Value stored to 'stdStorePtr' is never \
                read</div></td></tr>
-<tr><td class="num" id="LN560">560</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN561">561</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN562">562</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
562, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
                std"</span>;</td></tr>
-<tr><td class="num" id="LN563">563</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN564">564</td><td class="line">    <span \
class='comment'>//-- Calculating weighted mean, and weighted std \
                -----------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN565">565</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN566">566</td><td class="line">    QString info;</td></tr>
-<tr><td class="num" id="LN567">567</td><td class="line">    <span \
                class='keyword'>float</span>   weightedMean = 0.0F;</td></tr>
-<tr><td class="num" id="LN568">568</td><td class="line">    <span \
                class='keyword'>float</span>   weightedStd  = 0.0F;</td></tr>
-<tr><td class="num" id="LN569">569</td><td class="line">    <span \
                class='keyword'>float</span>   datasd[3]    = {0.0F, 0.0F, \
                0.0F};</td></tr>
-<tr><td class="num" id="LN570">570</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN571">571</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; points-&gt;cols) ; j++)</td></tr>
-<tr><td class="num" id="LN572">572</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN573">573</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN574">574</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN575">575</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN576">576</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> moveToChannel=0 ; \
                moveToChannel &lt;= j ; moveToChannel++)</td></tr>
-<tr><td class="num" id="LN577">577</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN578">578</td><td class="line">            \
                meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN579">579</td><td class="line">            \
                stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN580">580</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN581">581</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN582">582</td><td class="line">        <span \
                class='keyword'>for</span> (uint i=0 ; i &lt; d-&gt;clusterCount ; \
                i++)</td></tr>
-<tr><td class="num" id="LN583">583</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN584">584</td><td class="line">            <span \
                class='keyword'>if</span> (rowPosition[i] &gt;= 1)</td></tr>
-<tr><td class="num" id="LN585">585</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN586">586</td><td class="line">                weightedMean \
                += (*meanStorePtr) * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN587">587</td><td class="line">                weightedStd  \
                += (*stdStorePtr)  * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN588">588</td><td class="line">                meanStorePtr \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN589">589</td><td class="line">                stdStorePtr  \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN590">590</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN591">591</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN592">592</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN593">593</td><td class="line">        weightedMean = \
                weightedMean / (d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN594">594</td><td class="line">        weightedStd  = \
                weightedStd  / (d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN595">595</td><td class="line">        datasd[j]    = \
                weightedStd;</td></tr>
-<tr><td class="num" id="LN596">596</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN597">597</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN598">598</td><td class="line">        \
                info.append(QString::number(j));</td></tr>
-<tr><td class="num" id="LN599">599</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Mean: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN600">600</td><td class="line">        \
                info.append(QString::number(weightedMean));</td></tr>
-<tr><td class="num" id="LN601">601</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Standard \
                Deviation: "</span>));</td></tr>
-<tr><td class="num" id="LN602">602</td><td class="line">        \
                info.append(QString::number(weightedStd));</td></tr>
-<tr><td class="num" id="LN603">603</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN604">604</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN605">605</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
605, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr>
-<tr><td class="num" id="LN606">606</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN607">607</td><td class="line">    <span class='comment'>// \
-- adaptation ---------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN608">608</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN609">609</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN610">610</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN611">611</td><td class="line">        <span \
                class='comment'>// For 16 bits images only.</span></td></tr>
-<tr><td class="num" id="LN612">612</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN613">613</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;neimage.sixteenBit())</td></tr>
-<tr><td class="num" id="LN614">614</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN615">615</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i=0 ; i &lt; \
                points-&gt;cols ; i++)</td></tr>
-<tr><td class="num" id="LN616">616</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN617">617</td><td class="line">                datasd[i] = \
                datasd[i] / 256;</td></tr>
-<tr><td class="num" id="LN618">618</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN619">619</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN620">620</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN621">621</td><td class="line">        noiseresult = \
                ((datasd[0]/2)+(datasd[1]/2)+(datasd[2]/2))/3;</td></tr>
-<tr><td class="num" id="LN622">622</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN623">623</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
623, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"All is completed"</span>;</td></tr>
-<tr><td class="num" id="LN624">624</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN625">625</td><td class="line">        <span \
class='comment'>//-- releasing matrices and closing files \
----------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN626">626</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN627">627</td><td class="line">        \
                cvReleaseMat(&amp;sd);</td></tr>
-<tr><td class="num" id="LN628">628</td><td class="line">        \
                cvReleaseMat(&amp;stdStore);</td></tr>
-<tr><td class="num" id="LN629">629</td><td class="line">        \
                cvReleaseMat(&amp;meanStore);</td></tr>
-<tr><td class="num" id="LN630">630</td><td class="line">        \
                cvReleaseMat(&amp;points);</td></tr>
-<tr><td class="num" id="LN631">631</td><td class="line">        \
                cvReleaseMat(&amp;clusters);</td></tr>
-<tr><td class="num" id="LN632">632</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN633">633</td><td class="line">        <span \
                class='keyword'>for</span> (uint i = 0; i &lt; 3; i++)</td></tr>
-<tr><td class="num" id="LN634">634</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN635">635</td><td class="line">            <span \
                class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr>
-<tr><td class="num" id="LN636">636</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN637">637</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN638">638</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN639">639</td><td class="line">    <span \
                class='keyword'>return</span> noiseresult;</td></tr>
-<tr><td class="num" id="LN640">640</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN641">641</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN642">642</td><td class="line"><span \
class='keyword'>int</span> ImgQSort::compressiondetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN643">643</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN644">644</td><td class="line">    <span \
class='comment'>//FIXME: set threshold value to an acceptable standard to get the \
                number of blocking artifacts</span></td></tr>
-<tr><td class="num" id="LN645">645</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>int</span> THRESHOLD  = \
                30;</td></tr>
-<tr><td class="num" id="LN646">646</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>int</span> block_size = \
                8;</td></tr>
-<tr><td class="num" id="LN647">647</td><td class="line">    <span \
                class='keyword'>int</span> countblocks      = 0;</td></tr>
-<tr><td class="num" id="LN648">648</td><td class="line">    <span \
                class='keyword'>int</span> number_of_blocks = 0;</td></tr>
-<tr><td class="num" id="LN649">649</td><td class="line">    <span \
                class='keyword'>int</span> sum              = 0;</td></tr>
-<tr><td class="num" id="LN650">650</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN651">651</td><td class="line">    std::vector&lt;<span \
                class='keyword'>int</span>&gt; average_bottom, average_middle, \
                average_top;</td></tr>
-<tr><td class="num" id="LN652">652</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN653">653</td><td class="line">    <span class='comment'>// \
                Go through 8 blocks at a time horizontally</span></td></tr>
-<tr><td class="num" id="LN654">654</td><td class="line">    <span class='comment'>// \
                iterating through columns.</span></td></tr>
-<tr><td class="num" id="LN655">655</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN656">656</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; d-&gt;running \
                &amp;&amp; i &lt; d-&gt;src_gray.rows; i++)</td></tr>
-<tr><td class="num" id="LN657">657</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN658">658</td><td class="line">        <span \
                class='comment'>// Calculating intensity of top \
                column.</span></td></tr>
-<tr><td class="num" id="LN659">659</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN660">660</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN661">661</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN662">662</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN663">663</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN664">664</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN665">665</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN666">666</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j);</td></tr>
-<tr><td class="num" id="LN667">667</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN668">668</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN669">669</td><td class="line">            \
                average_top.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN670">670</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN671">671</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN672">672</td><td class="line">        <span \
                class='comment'>// Calculating intensity of middle \
                column.</span></td></tr>
-<tr><td class="num" id="LN673">673</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN674">674</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN675">675</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN676">676</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN677">677</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN678">678</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN679">679</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN680">680</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i+1, \
                j);</td></tr>
-<tr><td class="num" id="LN681">681</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN682">682</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN683">683</td><td class="line">            \
                average_middle.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN684">684</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN685">685</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN686">686</td><td class="line">        <span \
                class='comment'>// Calculating intensity of bottom \
                column.</span></td></tr>
-<tr><td class="num" id="LN687">687</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN688">688</td><td class="line">        countblocks = \
                0;</td></tr>
-<tr><td class="num" id="LN689">689</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN690">690</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN691">691</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN692">692</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN693">693</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN694">694</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN695">695</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN696">696</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i+2, \
                j);</td></tr>
-<tr><td class="num" id="LN697">697</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN698">698</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN699">699</td><td class="line">            \
                average_bottom.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN700">700</td><td class="line">            \
                countblocks++;</td></tr>
-<tr><td class="num" id="LN701">701</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN702">702</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN703">703</td><td class="line">        <span \
class='comment'>// Check if the average intensity of 8 blocks in the top, middle and \
                bottom rows are equal.</span></td></tr>
-<tr><td class="num" id="LN704">704</td><td class="line">        <span \
                class='comment'>// If so increment number_of_blocks.</span></td></tr>
-<tr><td class="num" id="LN705">705</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN706">706</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                countblocks; j++)</td></tr>
-<tr><td class="num" id="LN707">707</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN708">708</td><td class="line">            <span \
class='keyword'>if</span> ((average_middle[j] == \
                (average_top[j]+average_bottom[j])/2) &amp;&amp;</td></tr>
-<tr><td class="num" id="LN709">709</td><td class="line">                \
                average_middle[j] &gt; THRESHOLD)</td></tr>
-<tr><td class="num" id="LN710">710</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN711">711</td><td class="line">                \
                number_of_blocks++;</td></tr>
-<tr><td class="num" id="LN712">712</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN713">713</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN714">714</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN715">715</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN716">716</td><td class="line">    \
                average_bottom.clear();</td></tr>
-<tr><td class="num" id="LN717">717</td><td class="line">    \
                average_middle.clear();</td></tr>
-<tr><td class="num" id="LN718">718</td><td class="line">    \
                average_top.clear();</td></tr>
-<tr><td class="num" id="LN719">719</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN720">720</td><td class="line">    <span class='comment'>// \
                Iterating through rows.</span></td></tr>
-<tr><td class="num" id="LN721">721</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN722">722</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; d-&gt;running \
                &amp;&amp; j &lt; d-&gt;src_gray.cols; j++)</td></tr>
-<tr><td class="num" id="LN723">723</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN724">724</td><td class="line">        <span \
                class='comment'>// Calculating intensity of top row.</span></td></tr>
-<tr><td class="num" id="LN725">725</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN726">726</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN727">727</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN728">728</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN729">729</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN730">730</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN731">731</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN732">732</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j);</td></tr>
-<tr><td class="num" id="LN733">733</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN734">734</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN735">735</td><td class="line">            \
                average_top.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN736">736</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN737">737</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN738">738</td><td class="line">        <span \
                class='comment'>// Calculating intensity of middle \
                row.</span></td></tr>
-<tr><td class="num" id="LN739">739</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN740">740</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i= 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN741">741</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN742">742</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN743">743</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN744">744</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN745">745</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN746">746</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j+1);</td></tr>
-<tr><td class="num" id="LN747">747</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN748">748</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN749">749</td><td class="line">            \
                average_middle.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN750">750</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN751">751</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN752">752</td><td class="line">        <span \
                class='comment'>// Calculating intensity of bottom \
                row.</span></td></tr>
-<tr><td class="num" id="LN753">753</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN754">754</td><td class="line">        countblocks = \
                0;</td></tr>
-<tr><td class="num" id="LN755">755</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN756">756</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN757">757</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN758">758</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN759">759</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN760">760</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN761">761</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN762">762</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j+2);</td></tr>
-<tr><td class="num" id="LN763">763</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN764">764</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN765">765</td><td class="line">            \
                average_bottom.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN766">766</td><td class="line">            \
                countblocks++;</td></tr>
-<tr><td class="num" id="LN767">767</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN768">768</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN769">769</td><td class="line">        <span \
class='comment'>// Check if the average intensity of 8 blocks in the top, middle and \
                bottom rows are equal.</span></td></tr>
-<tr><td class="num" id="LN770">770</td><td class="line">        <span \
                class='comment'>// If so increment number_of_blocks.</span></td></tr>
-<tr><td class="num" id="LN771">771</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN772">772</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                countblocks; i++)</td></tr>
-<tr><td class="num" id="LN773">773</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN774">774</td><td class="line">            <span \
class='keyword'>if</span> ((average_middle[i] == \
                (average_top[i]+average_bottom[i])/2) &amp;&amp;</td></tr>
-<tr><td class="num" id="LN775">775</td><td class="line">                \
                average_middle[i] &gt; THRESHOLD)</td></tr>
-<tr><td class="num" id="LN776">776</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN777">777</td><td class="line">                \
                number_of_blocks++;</td></tr>
-<tr><td class="num" id="LN778">778</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN779">779</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN780">780</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN781">781</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN782">782</td><td class="line">    <span \
                class='keyword'>return</span> number_of_blocks;</td></tr>
-<tr><td class="num" id="LN783">783</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN784">784</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN785">785</td><td class="line"><span \
class='keyword'>int</span> ImgQSort::exposureamount() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN786">786</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN787">787</td><td class="line">    <span \
                class='comment'>/// Separate the image in 3 places ( B, G and R \
                )</span></td></tr>
-<tr><td class="num" id="LN788">788</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN789">789</td><td class="line">    std::vector&lt;Mat&gt; \
                bgr_planes;</td></tr>
-<tr><td class="num" id="LN790">790</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN791">791</td><td class="line">    split(d-&gt;src, \
                bgr_planes);</td></tr>
-<tr><td class="num" id="LN792">792</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN793">793</td><td class="line">    <span \
                class='comment'>/// Establish the number of bins</span></td></tr>
-<tr><td class="num" id="LN794">794</td><td class="line">    <span \
                class='keyword'>int</span> histSize           = 256;</td></tr>
-<tr><td class="num" id="LN795">795</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN796">796</td><td class="line">    <span \
                class='comment'>/// Set the ranges ( for B,G,R) )</span></td></tr>
-<tr><td class="num" id="LN797">797</td><td class="line">    <span \
                class='keyword'>float</span> range[]          = { 0, 256 } \
                ;</td></tr>
-<tr><td class="num" id="LN798">798</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>float</span>* histRange = { range \
                };</td></tr>
-<tr><td class="num" id="LN799">799</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN800">800</td><td class="line">    <span \
class='keyword'>bool</span> uniform           = <span \
                class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN801">801</td><td class="line">    <span \
class='keyword'>bool</span> accumulate        = <span \
                class='keyword'>false</span>;</td></tr>
-<tr><td class="num" id="LN802">802</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN803">803</td><td class="line">    Mat b_hist, g_hist, \
                r_hist;</td></tr>
-<tr><td class="num" id="LN804">804</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN805">805</td><td class="line">    <span \
                class='comment'>/// Compute the histograms</span></td></tr>
-<tr><td class="num" id="LN806">806</td><td class="line">    \
calcHist(&amp;bgr_planes[0], 1, 0, Mat(), b_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN807">807</td><td class="line">    \
calcHist(&amp;bgr_planes[1], 1, 0, Mat(), g_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN808">808</td><td class="line">    \
calcHist(&amp;bgr_planes[2], 1, 0, Mat(), r_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN809">809</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN810">810</td><td class="line">    <span class='comment'>// \
                Draw the histograms for B, G and R</span></td></tr>
-<tr><td class="num" id="LN811">811</td><td class="line">    <span \
                class='keyword'>int</span> hist_w = 512;</td></tr>
-<tr><td class="num" id="LN812">812</td><td class="line">    <span \
                class='keyword'>int</span> hist_h = 400;</td></tr>
-<tr><td class="num" id="LN813">813</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN814">814</td><td class="line">    Mat histImage( hist_h, \
hist_w, <span class='macro'>CV_8UC3<span class='expansion'>(((0) &amp; ((1 &lt;&lt; \
                3) - 1)) + (((3)-1) &lt;&lt; 3))</span></span>, Scalar( 0,0,0) \
                );</td></tr>
-<tr><td class="num" id="LN815">815</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN816">816</td><td class="line">    <span \
                class='comment'>/// Normalize the histograms:</span></td></tr>
-<tr><td class="num" id="LN817">817</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN818">818</td><td class="line">    normalize(b_hist, \
                b_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN819">819</td><td class="line">    normalize(g_hist, \
                g_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN820">820</td><td class="line">    normalize(r_hist, \
                r_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN821">821</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN822">822</td><td class="line">    <span \
                class='comment'>/// Sum the histograms</span></td></tr>
-<tr><td class="num" id="LN823">823</td><td class="line">    Scalar \
                rmean,gmean,bmean;</td></tr>
-<tr><td class="num" id="LN824">824</td><td class="line">    rmean             = \
                mean(r_hist);</td></tr>
-<tr><td class="num" id="LN825">825</td><td class="line">    gmean             = \
                mean(g_hist);</td></tr>
-<tr><td class="num" id="LN826">826</td><td class="line">    bmean             = \
                mean(b_hist);</td></tr>
-<tr><td class="num" id="LN827">827</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN828">828</td><td class="line">    <span \
class='keyword'>int</span> exposurelevel = (rmean[0] + gmean[0] + bmean[0]) / \
                3;</td></tr>
-<tr><td class="num" id="LN829">829</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN830">830</td><td class="line">    <span \
                class='keyword'>return</span> exposurelevel;</td></tr>
-<tr><td class="num" id="LN831">831</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN832">832</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN833">833</td><td class="line">} <span class='comment'>// \
                namespace Digikam</span></td></tr>
-</table></body></html>
diff --git a/static/reports/clang/master/report-e5c799.html \
b/static/reports/clang/master/report-2cb6e1.html similarity index 100%
rename from static/reports/clang/master/report-e5c799.html
rename to static/reports/clang/master/report-2cb6e1.html
diff --git a/static/reports/clang/master/report-f4df8e.html \
b/static/reports/clang/master/report-2f6e59.html similarity index 100%
rename from static/reports/clang/master/report-f4df8e.html
rename to static/reports/clang/master/report-2f6e59.html
diff --git a/static/reports/clang/master/report-31b9e4.html \
b/static/reports/clang/master/report-37c21d.html similarity index 100%
rename from static/reports/clang/master/report-31b9e4.html
rename to static/reports/clang/master/report-37c21d.html
diff --git a/static/reports/clang/master/report-a8d6f7.html \
b/static/reports/clang/master/report-45cfba.html similarity index 100%
rename from static/reports/clang/master/report-a8d6f7.html
rename to static/reports/clang/master/report-45cfba.html
diff --git a/static/reports/clang/master/report-c57862.html \
b/static/reports/clang/master/report-4a77aa.html similarity index 100%
rename from static/reports/clang/master/report-c57862.html
rename to static/reports/clang/master/report-4a77aa.html
diff --git a/static/reports/clang/master/report-3496d4.html \
b/static/reports/clang/master/report-4b9f00.html similarity index 100%
rename from static/reports/clang/master/report-3496d4.html
rename to static/reports/clang/master/report-4b9f00.html
diff --git a/static/reports/clang/master/report-2b9965.html \
b/static/reports/clang/master/report-4e6aab.html similarity index 100%
rename from static/reports/clang/master/report-2b9965.html
rename to static/reports/clang/master/report-4e6aab.html
diff --git a/static/reports/clang/master/report-b5cbf4.html \
b/static/reports/clang/master/report-4ec4cd.html similarity index 100%
rename from static/reports/clang/master/report-b5cbf4.html
rename to static/reports/clang/master/report-4ec4cd.html
diff --git a/static/reports/clang/master/report-101c98.html \
b/static/reports/clang/master/report-52d75f.html similarity index 100%
rename from static/reports/clang/master/report-101c98.html
rename to static/reports/clang/master/report-52d75f.html
diff --git a/static/reports/clang/master/report-b435e5.html \
b/static/reports/clang/master/report-615b81.html similarity index 100%
rename from static/reports/clang/master/report-b435e5.html
rename to static/reports/clang/master/report-615b81.html
diff --git a/static/reports/clang/master/report-63575f.html \
b/static/reports/clang/master/report-63575f.html deleted file mode 100644
index 5a0cf0f7..00000000
--- a/static/reports/clang/master/report-63575f.html
+++ /dev/null
@@ -1,922 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp</title>
-<style type="text/css">
- body { color:#000000; background-color:#ffffff }
- body { font-family:Helvetica, sans-serif; font-size:10pt }
- h1 { font-size:14pt }
- .code { border-collapse:collapse; width:100%; }
- .code { font-family: "Monospace", monospace; font-size:10pt }
- .code { line-height: 1.2em }
- .comment { color: green; font-style: oblique }
- .keyword { color: blue }
- .string_literal { color: red }
- .directive { color: darkmagenta }
- .expansion { display: none; }
- .macro:hover .expansion { display: block; border: 2px solid #FF0000; padding: 2px; \
background-color:#FFF0F0; font-weight: normal;   -webkit-border-radius:5px;  \
-webkit-box-shadow:1px 1px 7px #000; position: absolute; top: -1em; left:10em; \
                z-index: 1 } 
- .macro { color: darkmagenta; background-color:LemonChiffon; position: relative }
- .num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
- .num { text-align:right; font-size:8pt }
- .num { color:#444444 }
- .line { padding-left: 1ex; border-left: 3px solid #ccc }
- .line { white-space: pre }
- .msg { -webkit-box-shadow:1px 1px 7px #000 }
- .msg { -webkit-border-radius:5px }
- .msg { font-family:Helvetica, sans-serif; font-size:8pt }
- .msg { float:left }
- .msg { padding:0.25em 1ex 0.25em 1ex }
- .msg { margin-top:10px; margin-bottom:10px }
- .msg { font-weight:bold }
- .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
- .msgT { padding:0x; spacing:0x }
- .msgEvent { background-color:#fff8b4; color:#000000 }
- .msgControl { background-color:#bbbbbb; color:#000000 }
- .mrange { background-color:#dfddf3 }
- .mrange { border-bottom:1px solid #6F9DBE }
- .PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
- .PathIndex { -webkit-border-radius:8px }
- .PathIndexEvent { background-color:#bfba87 }
- .PathIndexControl { background-color:#8c8c8c }
- .PathNav a { text-decoration:none; font-size: larger }
- .CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
- .CodeRemovalHint { background-color:#de1010 }
- .CodeRemovalHint { border-bottom:1px solid #6F9DBE }
- table.simpletable {
-   padding: 5px;
-   font-size:12pt;
-   margin:20px;
-   border-collapse: collapse; border-spacing: 0px;
- }
- td.rowname {
-   text-align:right; font-weight:bold; color:#444444;
-   padding-right:2ex; }
-</style>
-</head>
-<body>
-<!-- BUGDESC Value stored to 'meanStorePtr' is never read -->
-
-<!-- BUGTYPE Dead assignment -->
-
-<!-- BUGCATEGORY Dead store -->
-
-<!-- BUGFILE /mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp -->
-
-<!-- FILENAME imgqsort.cpp -->
-
-<!-- FUNCTIONNAME noisedetector -->
-
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 69e1ccd0d034c09adb5a94704f5a93df -->
-
-<!-- BUGLINE 558 -->
-
-<!-- BUGCOLUMN 9 -->
-
-<!-- BUGPATHLENGTH 1 -->
-
-<!-- BUGMETAEND -->
-<!-- REPORTHEADER -->
-<h3>Bug Summary</h3>
-<table class="simpletable">
-<tr><td class="rowname">File:</td><td>core/libs/database/imgqsort/imgqsort.cpp</td></tr>
                
-<tr><td class="rowname">Location:</td><td><a href="#EndPath">line 558, column \
                9</a></td></tr>
-<tr><td class="rowname">Description:</td><td>Value stored to 'meanStorePtr' is never \
                read</td></tr>
-</table>
-<!-- REPORTSUMMARYEXTRA -->
-<h3>Annotated Source Code</h3>
-<table class="code">
-<tr><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* \
                ============================================================</span></td></tr>
                
-<tr><td class="num" id="LN2">2</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This \
                file is a part of digiKam project</span></td></tr>
-<tr><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* \
                http://www.digikam.org</span></td></tr>
-<tr><td class="num" id="LN5">5</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date    \
                : 25/08/2013</span></td></tr>
-<tr><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* \
                Description : Image Quality Sorter</span></td></tr>
-<tr><td class="num" id="LN8">8</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* \
Copyright (C) 2013-2018 by Gilles Caulier &lt;caulier dot gilles at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* \
Copyright (C) 2013-2014 by Gowtham Ashok &lt;gwty93 at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN11">11</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This \
                program is free software; you can redistribute it</span></td></tr>
-<tr><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* \
                and/or modify it under the terms of the GNU General</span></td></tr>
-<tr><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* \
                Public License as published by the Free Software \
                Foundation;</span></td></tr>
-<tr><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* \
                either version 2, or (at your option)</span></td></tr>
-<tr><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* any \
                later version.</span></td></tr>
-<tr><td class="num" id="LN17">17</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* This \
                program is distributed in the hope that it will be \
                useful,</span></td></tr>
-<tr><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* but \
                WITHOUT ANY WARRANTY; without even the implied warranty \
                of</span></td></tr>
-<tr><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* \
                MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See \
                the</span></td></tr>
-<tr><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* GNU \
                General Public License for more details.</span></td></tr>
-<tr><td class="num" id="LN22">22</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* \
                ============================================================ \
                */</span></td></tr>
-<tr><td class="num" id="LN24">24</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN25">25</td><td class="line"><span \
                class='directive'>#include "imgqsort.h"</span></td></tr>
-<tr><td class="num" id="LN26">26</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN27">27</td><td class="line"><span class='comment'>// C++ \
                includes</span></td></tr>
-<tr><td class="num" id="LN28">28</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN29">29</td><td class="line"><span \
                class='directive'>#include &lt;cmath&gt;</span></td></tr>
-<tr><td class="num" id="LN30">30</td><td class="line"><span \
                class='directive'>#include &lt;cfloat&gt;</span></td></tr>
-<tr><td class="num" id="LN31">31</td><td class="line"><span \
                class='directive'>#include &lt;cstdio&gt;</span></td></tr>
-<tr><td class="num" id="LN32">32</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// Qt \
                includes</span></td></tr>
-<tr><td class="num" id="LN34">34</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN35">35</td><td class="line"><span \
                class='directive'>#include &lt;QTextStream&gt;</span></td></tr>
-<tr><td class="num" id="LN36">36</td><td class="line"><span \
                class='directive'>#include &lt;QFile&gt;</span></td></tr>
-<tr><td class="num" id="LN37">37</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// Local \
                includes</span></td></tr>
-<tr><td class="num" id="LN39">39</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN40">40</td><td class="line"><span \
                class='directive'>#include "digikam_opencv.h"</span></td></tr>
-<tr><td class="num" id="LN41">41</td><td class="line"><span \
                class='directive'>#include "digikam_debug.h"</span></td></tr>
-<tr><td class="num" id="LN42">42</td><td class="line"><span \
                class='directive'>#include "mixerfilter.h"</span></td></tr>
-<tr><td class="num" id="LN43">43</td><td class="line"><span \
                class='directive'>#include "nrfilter.h"</span></td></tr>
-<tr><td class="num" id="LN44">44</td><td class="line"><span \
                class='directive'>#include "nrestimate.h"</span></td></tr>
-<tr><td class="num" id="LN45">45</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// To \
                switch on/off log trace file.</span></td></tr>
-<tr><td class="num" id="LN47">47</td><td class="line"><span class='comment'>// \
                #define TRACE 1</span></td></tr>
-<tr><td class="num" id="LN48">48</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN49">49</td><td class="line"><span \
                class='keyword'>using</span> <span class='keyword'>namespace</span> \
                cv;</td></tr>
-<tr><td class="num" id="LN50">50</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN51">51</td><td class="line"><span \
                class='keyword'>namespace</span> Digikam</td></tr>
-<tr><td class="num" id="LN52">52</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN53">53</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN54">54</td><td class="line"><span \
class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span \
class='expansion'>__attribute__((visibility("hidden")))</span></span> \
                ImgQSort::Private</td></tr>
-<tr><td class="num" id="LN55">55</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN56">56</td><td class="line"><span \
                class='keyword'>public</span>:</td></tr>
-<tr><td class="num" id="LN57">57</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN58">58</td><td class="line">    <span \
                class='keyword'>explicit</span> Private() :</td></tr>
-<tr><td class="num" id="LN59">59</td><td class="line">        clusterCount(30),      \
<span class='comment'>//used for k-means clustering algorithm in noise \
                detection</span></td></tr>
-<tr><td class="num" id="LN60">60</td><td class="line">        size(512)</td></tr>
-<tr><td class="num" id="LN61">61</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
                c++)</td></tr>
-<tr><td class="num" id="LN63">63</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN64">64</td><td class="line">            fimg[c] = \
                0;</td></tr>
-<tr><td class="num" id="LN65">65</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN66">66</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN67">67</td><td class="line">        <span \
                class='comment'>// Setting the default values</span></td></tr>
-<tr><td class="num" id="LN68">68</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN69">69</td><td class="line">        edgeThresh        = \
                1;</td></tr>
-<tr><td class="num" id="LN70">70</td><td class="line">        lowThreshold      = \
                0.4;</td></tr>
-<tr><td class="num" id="LN71">71</td><td class="line">        ratio             = \
                3;</td></tr>
-<tr><td class="num" id="LN72">72</td><td class="line">        kernel_size       = \
                3;</td></tr>
-<tr><td class="num" id="LN73">73</td><td class="line">        blurrejected      = \
                0.0;</td></tr>
-<tr><td class="num" id="LN74">74</td><td class="line">        blur              = \
                0.0;</td></tr>
-<tr><td class="num" id="LN75">75</td><td class="line">        acceptedThreshold = \
                0.0;</td></tr>
-<tr><td class="num" id="LN76">76</td><td class="line">        pendingThreshold  = \
                0.0;</td></tr>
-<tr><td class="num" id="LN77">77</td><td class="line">        rejectedThreshold = \
                0.0;</td></tr>
-<tr><td class="num" id="LN78">78</td><td class="line">        label             = \
                0;</td></tr>
-<tr><td class="num" id="LN79">79</td><td class="line">        running           = \
                <span class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN80">80</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN81">81</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN82">82</td><td class="line">    <span \
                class='keyword'>float</span>*               fimg[3];</td></tr>
-<tr><td class="num" id="LN83">83</td><td class="line">    <span \
                class='keyword'>const</span> uint           clusterCount;</td></tr>
-<tr><td class="num" id="LN84">84</td><td class="line">    <span \
class='keyword'>const</span> uint           size;              <span \
                class='comment'>// Size of squared original image.</span></td></tr>
-<tr><td class="num" id="LN85">85</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN86">86</td><td class="line">    Mat                  src;  \
                <span class='comment'>// Matrix of the original source \
                image</span></td></tr>
-<tr><td class="num" id="LN87">87</td><td class="line">    Mat                  \
src_gray;          <span class='comment'>// Matrix of the grayscaled source \
                image</span></td></tr>
-<tr><td class="num" id="LN88">88</td><td class="line">    Mat                  \
detected_edges;    <span class='comment'>// Matrix containing only edges in the \
                image</span></td></tr>
-<tr><td class="num" id="LN89">89</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN90">90</td><td class="line">    <span \
class='keyword'>int</span>                  edgeThresh;        <span \
class='comment'>// threshold above which we say that edges are present at a \
                point</span></td></tr>
-<tr><td class="num" id="LN91">91</td><td class="line">    <span \
class='keyword'>int</span>                  ratio;             <span \
class='comment'>// lower:upper threshold for canny edge detector \
                algorithm</span></td></tr>
-<tr><td class="num" id="LN92">92</td><td class="line">    <span \
                class='keyword'>int</span>                  kernel_size;</td></tr>
-<tr><td class="num" id="LN93">93</td><td class="line">    <span class='comment'>// \
                kernel size for the Sobel operations to be performed \
                internally</span></td></tr>
-<tr><td class="num" id="LN94">94</td><td class="line">    <span class='comment'>// \
                by the edge detector</span></td></tr>
-<tr><td class="num" id="LN95">95</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN96">96</td><td class="line">    <span \
                class='keyword'>double</span>               lowThreshold;</td></tr>
-<tr><td class="num" id="LN97">97</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN98">98</td><td class="line">    DImg                 \
                image;             <span class='comment'>// original \
                image</span></td></tr>
-<tr><td class="num" id="LN99">99</td><td class="line">    DImg                 \
neimage;           <span class='comment'>// noise estimation image[ for \
                color]</span></td></tr>
-<tr><td class="num" id="LN100">100</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN101">101</td><td class="line">    ImageQualitySettings \
                imq;</td></tr>
-<tr><td class="num" id="LN102">102</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN103">103</td><td class="line">    <span \
                class='keyword'>double</span>               blurrejected;</td></tr>
-<tr><td class="num" id="LN104">104</td><td class="line">    <span \
                class='keyword'>double</span>               blur;</td></tr>
-<tr><td class="num" id="LN105">105</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN106">106</td><td class="line">    <span \
                class='keyword'>double</span>               \
                acceptedThreshold;</td></tr>
-<tr><td class="num" id="LN107">107</td><td class="line">    <span \
                class='keyword'>double</span>               \
                pendingThreshold;</td></tr>
-<tr><td class="num" id="LN108">108</td><td class="line">    <span \
                class='keyword'>double</span>               \
                rejectedThreshold;</td></tr>
-<tr><td class="num" id="LN109">109</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN110">110</td><td class="line">    QString              \
                path;              <span class='comment'>// Path to host result \
                file</span></td></tr>
-<tr><td class="num" id="LN111">111</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN112">112</td><td class="line">    PickLabel*           \
                label;</td></tr>
-<tr><td class="num" id="LN113">113</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN114">114</td><td class="line">    <span \
class='keyword'>volatile</span> <span class='keyword'>bool</span>        \
                running;</td></tr>
-<tr><td class="num" id="LN115">115</td><td class="line">};</td></tr>
-<tr><td class="num" id="LN116">116</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN117">117</td><td class="line">ImgQSort::ImgQSort(<span \
class='keyword'>const</span> DImg&amp; img, <span class='keyword'>const</span> \
ImageQualitySettings&amp; imq, PickLabel* <span class='keyword'>const</span> \
                label)</td></tr>
-<tr><td class="num" id="LN118">118</td><td class="line">    : d(<span \
                class='keyword'>new</span> Private)</td></tr>
-<tr><td class="num" id="LN119">119</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN120">120</td><td class="line">    <span class='comment'>// \
                Reading settings from GUI</span></td></tr>
-<tr><td class="num" id="LN121">121</td><td class="line">    d-&gt;imq.detectBlur     \
                = imq.detectBlur;</td></tr>
-<tr><td class="num" id="LN122">122</td><td class="line">    d-&gt;imq.detectNoise    \
                = imq.detectNoise;</td></tr>
-<tr><td class="num" id="LN123">123</td><td class="line">    \
                d-&gt;imq.detectCompression  = imq.detectCompression;</td></tr>
-<tr><td class="num" id="LN124">124</td><td class="line">    \
                d-&gt;imq.detectOverexposure = imq.detectOverexposure;</td></tr>
-<tr><td class="num" id="LN125">125</td><td class="line">    d-&gt;imq.lowQRejected   \
                = imq.lowQRejected;</td></tr>
-<tr><td class="num" id="LN126">126</td><td class="line">    d-&gt;imq.mediumQPending \
                = imq.mediumQPending;</td></tr>
-<tr><td class="num" id="LN127">127</td><td class="line">    d-&gt;imq.highQAccepted  \
                = imq.highQAccepted;</td></tr>
-<tr><td class="num" id="LN128">128</td><td class="line">    d-&gt;imq.speed          \
                = imq.speed;</td></tr>
-<tr><td class="num" id="LN129">129</td><td class="line">    \
                d-&gt;imq.rejectedThreshold  = imq.rejectedThreshold;</td></tr>
-<tr><td class="num" id="LN130">130</td><td class="line">    \
                d-&gt;imq.pendingThreshold   = imq.pendingThreshold;</td></tr>
-<tr><td class="num" id="LN131">131</td><td class="line">    \
                d-&gt;imq.acceptedThreshold  = imq.acceptedThreshold;</td></tr>
-<tr><td class="num" id="LN132">132</td><td class="line">    d-&gt;imq.blurWeight     \
                = imq.blurWeight;</td></tr>
-<tr><td class="num" id="LN133">133</td><td class="line">    d-&gt;imq.noiseWeight    \
                = imq.noiseWeight;</td></tr>
-<tr><td class="num" id="LN134">134</td><td class="line">    \
                d-&gt;imq.compressionWeight  = imq.compressionWeight;</td></tr>
-<tr><td class="num" id="LN135">135</td><td class="line">    d-&gt;image              \
                = img;</td></tr>
-<tr><td class="num" id="LN136">136</td><td class="line">    d-&gt;neimage            \
                = img;</td></tr>
-<tr><td class="num" id="LN137">137</td><td class="line">    d-&gt;label              \
                = label;</td></tr>
-<tr><td class="num" id="LN138">138</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN139">139</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN140">140</td><td \
                class="line">ImgQSort::~ImgQSort()</td></tr>
-<tr><td class="num" id="LN141">141</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN142">142</td><td class="line">    <span \
                class='keyword'>delete</span> d;</td></tr>
-<tr><td class="num" id="LN143">143</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN144">144</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN145">145</td><td class="line"><span \
                class='keyword'>void</span> ImgQSort::startAnalyse()</td></tr>
-<tr><td class="num" id="LN146">146</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN147">147</td><td class="line">    <span class='comment'>// \
                For Noise Estimation</span></td></tr>
-<tr><td class="num" id="LN148">148</td><td class="line">    <span class='comment'>// \
Use the Top/Left corner of 256x256 pixels to analyze noise contents from \
                image.</span></td></tr>
-<tr><td class="num" id="LN149">149</td><td class="line">    <span class='comment'>// \
                This will speed-up computation time with OpenCV.</span></td></tr>
-<tr><td class="num" id="LN150">150</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN151">151</td><td class="line">    readImage();</td></tr>
-<tr><td class="num" id="LN152">152</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN153">153</td><td class="line">    <span \
                class='keyword'>double</span> blur             = 0.0;</td></tr>
-<tr><td class="num" id="LN154">154</td><td class="line">    <span \
                class='keyword'>short</span>  blur2            = 0;</td></tr>
-<tr><td class="num" id="LN155">155</td><td class="line">    <span \
                class='keyword'>double</span> noise            = 0.0;</td></tr>
-<tr><td class="num" id="LN156">156</td><td class="line">    <span \
                class='keyword'>int</span>    compressionlevel = 0;</td></tr>
-<tr><td class="num" id="LN157">157</td><td class="line">    <span \
                class='keyword'>float</span>  finalquality     = 0.0;</td></tr>
-<tr><td class="num" id="LN158">158</td><td class="line">    <span \
                class='keyword'>int</span>    exposurelevel    = 0;</td></tr>
-<tr><td class="num" id="LN159">159</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN160">160</td><td class="line">    <span class='comment'>// \
If blur option is selected in settings, run the blur detection \
                algorithms</span></td></tr>
-<tr><td class="num" id="LN161">161</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectBlur)</td></tr>
-<tr><td class="num" id="LN162">162</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN163">163</td><td class="line">        <span \
                class='comment'>// Returns blur value between 0 and \
                1.</span></td></tr>
-<tr><td class="num" id="LN164">164</td><td class="line">        <span \
                class='comment'>// If NaN is returned just assign \
                NoPickLabel</span></td></tr>
-<tr><td class="num" id="LN165">165</td><td class="line">        blur  = \
                blurdetector();</td></tr>
-<tr><td class="num" id="LN166">166</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
166, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Blur present in image is  : "</span> &lt;&lt; \
                blur;</td></tr>
-<tr><td class="num" id="LN167">167</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN168">168</td><td class="line">        <span \
                class='comment'>// Returns blur value between 1 and \
                32767.</span></td></tr>
-<tr><td class="num" id="LN169">169</td><td class="line">        <span \
                class='comment'>// If 1 is returned just assign \
                NoPickLabel</span></td></tr>
-<tr><td class="num" id="LN170">170</td><td class="line">        blur2 = \
                blurdetector2();</td></tr>
-<tr><td class="num" id="LN171">171</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
171, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Blur present in image [using LoG Filter] is : \
                "</span> &lt;&lt; blur2;</td></tr>
-<tr><td class="num" id="LN172">172</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN173">173</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN174">174</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN175">175</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN176">176</td><td class="line">        <span \
class='comment'>// Some images give very low noise value. Assign NoPickLabel in that \
                case.</span></td></tr>
-<tr><td class="num" id="LN177">177</td><td class="line">        <span \
                class='comment'>// Returns noise value between 0 and \
                1.</span></td></tr>
-<tr><td class="num" id="LN178">178</td><td class="line">        noise = \
                noisedetector();</td></tr>
-<tr><td class="num" id="LN179">179</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
179, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of Noise present in image is : "</span> &lt;&lt; \
                noise;</td></tr>
-<tr><td class="num" id="LN180">180</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN181">181</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN182">182</td><td class="line">    <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectCompression)</td></tr>
-<tr><td class="num" id="LN183">183</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN184">184</td><td class="line">        <span \
                class='comment'>// Returns number of blocks in the \
                image.</span></td></tr>
-<tr><td class="num" id="LN185">185</td><td class="line">        compressionlevel = \
                compressiondetector();</td></tr>
-<tr><td class="num" id="LN186">186</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
186, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Amount of compression artifacts present in image is : \
                "</span> &lt;&lt; compressionlevel;</td></tr>
-<tr><td class="num" id="LN187">187</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN188">188</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN189">189</td><td class="line">    <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; \
                d-&gt;imq.detectOverexposure)</td></tr>
-<tr><td class="num" id="LN190">190</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN191">191</td><td class="line">        <span \
                class='comment'>// Returns if there is overexposure in the \
                image</span></td></tr>
-<tr><td class="num" id="LN192">192</td><td class="line">        exposurelevel = \
                exposureamount();</td></tr>
-<tr><td class="num" id="LN193">193</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
193, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Exposure level present in image is : "</span> &lt;&lt; \
                exposurelevel;</td></tr>
-<tr><td class="num" id="LN194">194</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN195">195</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN196">196</td><td class="line"><span \
                class='directive'>#ifdef TRACE</span></td></tr>
-<tr><td class="num" id="LN197">197</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN198">198</td><td class="line">    QFile filems(<span \
                class='string_literal'>"imgqsortresult.txt"</span>);</td></tr>
-<tr><td class="num" id="LN199">199</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN200">200</td><td class="line">    <span \
class='keyword'>if</span> (filems.open(QIODevice::Append | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN201">201</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN202">202</td><td class="line">        QTextStream \
                oms(&amp;filems);</td></tr>
-<tr><td class="num" id="LN203">203</td><td class="line">        oms &lt;&lt; <span \
class='string_literal'>"File:"</span> &lt;&lt; d-&gt;image.originalFilePath() \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN204">204</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN205">205</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectBlur)</td></tr>
-<tr><td class="num" id="LN206">206</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN207">207</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Blur Present:"</span> &lt;&lt; blur &lt;&lt; \
                endl;</td></tr>
-<tr><td class="num" id="LN208">208</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Blur Present(using LoG filter):"</span>&lt;&lt; blur2 \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN209">209</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN210">210</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN211">211</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN212">212</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN213">213</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Noise Present:"</span> &lt;&lt; noise &lt;&lt; \
                endl;</td></tr>
-<tr><td class="num" id="LN214">214</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN215">215</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN216">216</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectCompression)</td></tr>
-<tr><td class="num" id="LN217">217</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN218">218</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Compression Present:"</span> &lt;&lt; compressionlevel \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN219">219</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN220">220</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN221">221</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;imq.detectOverexposure)</td></tr>
-<tr><td class="num" id="LN222">222</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN223">223</td><td class="line">            oms &lt;&lt; \
<span class='string_literal'>"Exposure Present:"</span> &lt;&lt; exposurelevel \
                &lt;&lt; endl;</td></tr>
-<tr><td class="num" id="LN224">224</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN225">225</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN226">226</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN227">227</td><td class="line"><span \
                class='directive'>#endif // TRACE</span></td></tr>
-<tr><td class="num" id="LN228">228</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN229">229</td><td class="line">    <span class='comment'>// \
                Calculating finalquality</span></td></tr>
-<tr><td class="num" id="LN230">230</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN231">231</td><td class="line">    <span class='comment'>// \
                All the results to have a range of 1 to 100.</span></td></tr>
-<tr><td class="num" id="LN232">232</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN233">233</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN234">234</td><td class="line">        <span \
class='keyword'>float</span> finalblur        = (blur*100)  + \
                ((blur2/32767)*100);</td></tr>
-<tr><td class="num" id="LN235">235</td><td class="line">        <span \
                class='keyword'>float</span> finalnoise       = noise*100;</td></tr>
-<tr><td class="num" id="LN236">236</td><td class="line">        <span \
class='keyword'>float</span> finalcompression = (compressionlevel / 1024) * 100; \
                <span class='comment'>// we are processing 1024 pixels size \
                image</span></td></tr>
-<tr><td class="num" id="LN237">237</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN238">238</td><td class="line">        finalquality         \
                = finalblur*d-&gt;imq.blurWeight   +</td></tr>
-<tr><td class="num" id="LN239">239</td><td class="line">                             \
                finalnoise*d-&gt;imq.noiseWeight +</td></tr>
-<tr><td class="num" id="LN240">240</td><td class="line">                             \
                finalcompression*d-&gt;imq.compressionWeight;</td></tr>
-<tr><td class="num" id="LN241">241</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN242">242</td><td class="line">        finalquality         \
                = finalquality / 100;</td></tr>
-<tr><td class="num" id="LN243">243</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN244">244</td><td class="line">        <span \
                class='comment'>// Assigning PickLabels</span></td></tr>
-<tr><td class="num" id="LN245">245</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN246">246</td><td class="line">        <span \
                class='keyword'>if</span> (finalquality == 0.0)</td></tr>
-<tr><td class="num" id="LN247">247</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN248">248</td><td class="line">            <span \
class='comment'>// Algorithms have not been run. So return \
                noPickLabel</span></td></tr>
-<tr><td class="num" id="LN249">249</td><td class="line">            *d-&gt;label = \
                NoPickLabel;</td></tr>
-<tr><td class="num" id="LN250">250</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN251">251</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (finalquality &lt; \
                d-&gt;imq.rejectedThreshold)</td></tr>
-<tr><td class="num" id="LN252">252</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN253">253</td><td class="line">            *d-&gt;label = \
                RejectedLabel;</td></tr>
-<tr><td class="num" id="LN254">254</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN255">255</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (finalquality &gt; \
d-&gt;imq.rejectedThreshold &amp;&amp; finalquality &lt; \
                d-&gt;imq.acceptedThreshold)</td></tr>
-<tr><td class="num" id="LN256">256</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN257">257</td><td class="line">            *d-&gt;label = \
                PendingLabel;</td></tr>
-<tr><td class="num" id="LN258">258</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN259">259</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN260">260</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN261">261</td><td class="line">            *d-&gt;label = \
                AcceptedLabel;</td></tr>
-<tr><td class="num" id="LN262">262</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN263">263</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN264">264</td><td class="line">    <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN265">265</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN266">266</td><td class="line">        *d-&gt;label = \
                NoPickLabel;</td></tr>
-<tr><td class="num" id="LN267">267</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN268">268</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN269">269</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN270">270</td><td class="line"><span \
                class='keyword'>void</span> ImgQSort::cancelAnalyse()</td></tr>
-<tr><td class="num" id="LN271">271</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN272">272</td><td class="line">    d-&gt;running = <span \
                class='keyword'>false</span>;</td></tr>
-<tr><td class="num" id="LN273">273</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN274">274</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN275">275</td><td class="line"><span \
class='keyword'>void</span> ImgQSort::readImage() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN276">276</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN277">277</td><td class="line">    MixerContainer \
                settings;</td></tr>
-<tr><td class="num" id="LN278">278</td><td class="line">    settings.bMonochrome = \
                <span class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN279">279</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN280">280</td><td class="line">    MixerFilter \
                mixer(&amp;d-&gt;image, 0L, settings);</td></tr>
-<tr><td class="num" id="LN281">281</td><td class="line">    \
                mixer.startFilterDirectly();</td></tr>
-<tr><td class="num" id="LN282">282</td><td class="line">    \
                d-&gt;image.putImageData(mixer.getTargetImage().bits());</td></tr>
-<tr><td class="num" id="LN283">283</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN284">284</td><td class="line">    d-&gt;src      = \
Mat(d-&gt;image.numPixels(), 3, <span class='macro'>CV_8UC3<span \
class='expansion'>(((0) &amp; ((1 &lt;&lt; 3) - 1)) + (((3)-1) &lt;&lt; \
3))</span></span>); <span class='comment'>// Create a matrix containing the pixel \
                values of original image</span></td></tr>
-<tr><td class="num" id="LN285">285</td><td class="line">    d-&gt;src_gray = \
Mat(d-&gt;image.numPixels(), 1, <span class='macro'>CV_8UC1<span \
class='expansion'>(((0) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
3))</span></span>); <span class='comment'>// Create a matrix containing the pixel \
                values of grayscaled image</span></td></tr>
-<tr><td class="num" id="LN286">286</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN287">287</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;imq.detectNoise)</td></tr>
-<tr><td class="num" id="LN288">288</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN289">289</td><td class="line">        DColor \
                col;</td></tr>
-<tr><td class="num" id="LN290">290</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN291">291</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0; d-&gt;running \
                &amp;&amp; (c &lt; 3); c++)</td></tr>
-<tr><td class="num" id="LN292">292</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN293">293</td><td class="line">            d-&gt;fimg[c] = \
<span class='keyword'>new</span> <span \
                class='keyword'>float</span>[d-&gt;neimage.numPixels()];</td></tr>
-<tr><td class="num" id="LN294">294</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN295">295</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN296">296</td><td class="line">        <span \
                class='keyword'>int</span> j = 0;</td></tr>
-<tr><td class="num" id="LN297">297</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN298">298</td><td class="line">        <span \
class='keyword'>for</span> (uint y = 0; d-&gt;running &amp;&amp; (y &lt; \
                d-&gt;neimage.height()); y++)</td></tr>
-<tr><td class="num" id="LN299">299</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN300">300</td><td class="line">            <span \
class='keyword'>for</span> (uint x = 0; d-&gt;running &amp;&amp; (x &lt; \
                d-&gt;neimage.width()); x++)</td></tr>
-<tr><td class="num" id="LN301">301</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN302">302</td><td class="line">                col          \
                = d-&gt;neimage.getPixelColor(x, y);</td></tr>
-<tr><td class="num" id="LN303">303</td><td class="line">                \
                d-&gt;fimg[0][j] = col.red();</td></tr>
-<tr><td class="num" id="LN304">304</td><td class="line">                \
                d-&gt;fimg[1][j] = col.green();</td></tr>
-<tr><td class="num" id="LN305">305</td><td class="line">                \
                d-&gt;fimg[2][j] = col.blue();</td></tr>
-<tr><td class="num" id="LN306">306</td><td class="line">                \
                j++;</td></tr>
-<tr><td class="num" id="LN307">307</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN308">308</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN309">309</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN310">310</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN311">311</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN312">312</td><td class="line"><span \
class='keyword'>void</span> ImgQSort::CannyThreshold(<span \
class='keyword'>int</span>, <span class='keyword'>void</span>*) <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN313">313</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN314">314</td><td class="line">    <span class='comment'>// \
                Reduce noise with a kernel 3x3.</span></td></tr>
-<tr><td class="num" id="LN315">315</td><td class="line">    blur(d-&gt;src_gray, \
                d-&gt;detected_edges, Size(3,3));</td></tr>
-<tr><td class="num" id="LN316">316</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN317">317</td><td class="line">    <span class='comment'>// \
                Canny detector.</span></td></tr>
-<tr><td class="num" id="LN318">318</td><td class="line">    \
Canny(d-&gt;detected_edges, d-&gt;detected_edges, d-&gt;lowThreshold, \
                d-&gt;lowThreshold*d-&gt;ratio,d-&gt; kernel_size);</td></tr>
-<tr><td class="num" id="LN319">319</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN320">320</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN321">321</td><td class="line"><span \
class='keyword'>double</span> ImgQSort::blurdetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN322">322</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN323">323</td><td class="line">    d-&gt;lowThreshold   = \
                0.4;</td></tr>
-<tr><td class="num" id="LN324">324</td><td class="line">    d-&gt;ratio          = \
                3;</td></tr>
-<tr><td class="num" id="LN325">325</td><td class="line">    <span \
                class='keyword'>double</span> maxval     = 0.0;</td></tr>
-<tr><td class="num" id="LN326">326</td><td class="line">    \
                ImgQSort::CannyThreshold(0, 0);</td></tr>
-<tr><td class="num" id="LN327">327</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN328">328</td><td class="line">    <span \
                class='keyword'>double</span> average    = \
                mean(d-&gt;detected_edges)[0];</td></tr>
-<tr><td class="num" id="LN329">329</td><td class="line">    <span \
class='keyword'>int</span>* <span class='keyword'>const</span> maxIdx = <span \
class='keyword'>new</span> <span class='keyword'>int</span>[<span \
                class='keyword'>sizeof</span>(d-&gt;detected_edges)];</td></tr>
-<tr><td class="num" id="LN330">330</td><td class="line">    \
                minMaxIdx(d-&gt;detected_edges, 0, &amp;maxval, 0, maxIdx);</td></tr>
-<tr><td class="num" id="LN331">331</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN332">332</td><td class="line">    <span \
                class='keyword'>double</span> blurresult = average / \
                maxval;</td></tr>
-<tr><td class="num" id="LN333">333</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN334">334</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
334, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The average of the edge intensity is "</span> &lt;&lt; \
                average;</td></tr>
-<tr><td class="num" id="LN335">335</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
335, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The maximum of the edge intensity is "</span> &lt;&lt; \
                maxval;</td></tr>
-<tr><td class="num" id="LN336">336</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
336, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The result of the edge intensity is  "</span> &lt;&lt; \
                blurresult;</td></tr>
-<tr><td class="num" id="LN337">337</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN338">338</td><td class="line">    <span \
                class='keyword'>delete</span> [] maxIdx;</td></tr>
-<tr><td class="num" id="LN339">339</td><td class="line">    <span \
                class='keyword'>return</span> blurresult;</td></tr>
-<tr><td class="num" id="LN340">340</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN341">341</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN342">342</td><td class="line"><span \
class='keyword'>short</span> ImgQSort::blurdetector2() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN343">343</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN344">344</td><td class="line">    <span class='comment'>// \
                Algorithm using Laplacian of Gaussian Filter to detect \
                blur.</span></td></tr>
-<tr><td class="num" id="LN345">345</td><td class="line">    Mat out;</td></tr>
-<tr><td class="num" id="LN346">346</td><td class="line">    Mat \
                noise_free;</td></tr>
-<tr><td class="num" id="LN347">347</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
347, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Algorithm using LoG Filter \
                started"</span>;</td></tr>
-<tr><td class="num" id="LN348">348</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN349">349</td><td class="line">    <span class='comment'>// \
                To remove noise from the image</span></td></tr>
-<tr><td class="num" id="LN350">350</td><td class="line">    \
                GaussianBlur(d-&gt;src_gray, noise_free, Size(3,3), 0, 0, \
                BORDER_DEFAULT);</td></tr>
-<tr><td class="num" id="LN351">351</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN352">352</td><td class="line">    <span class='comment'>// \
                Aperture size of 1 corresponds to the correct matrix</span></td></tr>
-<tr><td class="num" id="LN353">353</td><td class="line">    <span \
                class='keyword'>int</span> kernel_size = 3;</td></tr>
-<tr><td class="num" id="LN354">354</td><td class="line">    <span \
                class='keyword'>int</span> scale       = 1;</td></tr>
-<tr><td class="num" id="LN355">355</td><td class="line">    <span \
                class='keyword'>int</span> delta       = 0;</td></tr>
-<tr><td class="num" id="LN356">356</td><td class="line">    <span \
class='keyword'>int</span> ddepth      = <span class='macro'>CV_16S<span \
                class='expansion'>3</span></span>;</td></tr>
-<tr><td class="num" id="LN357">357</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN358">358</td><td class="line">    Laplacian(noise_free, \
                out, ddepth, kernel_size, scale, delta, BORDER_DEFAULT);</td></tr>
-<tr><td class="num" id="LN359">359</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN360">360</td><td class="line">    <span class='comment'>// \
                noise_free:  The input image without noise.</span></td></tr>
-<tr><td class="num" id="LN361">361</td><td class="line">    <span class='comment'>// \
                out:         Destination (output) image</span></td></tr>
-<tr><td class="num" id="LN362">362</td><td class="line">    <span class='comment'>// \
ddepth:      Depth of the destination image. Since our input is CV_8U we define \
                ddepth = CV_16S to avoid overflow</span></td></tr>
-<tr><td class="num" id="LN363">363</td><td class="line">    <span class='comment'>// \
kernel_size: The kernel size of the Sobel operator to be applied internally. We use 3 \
                ihere</span></td></tr>
-<tr><td class="num" id="LN364">364</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN365">365</td><td class="line">    <span \
                class='keyword'>short</span> maxLap = -32767;</td></tr>
-<tr><td class="num" id="LN366">366</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN367">367</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; out.rows; \
                i++)</td></tr>
-<tr><td class="num" id="LN368">368</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN369">369</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; out.cols; \
                j++)</td></tr>
-<tr><td class="num" id="LN370">370</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN371">371</td><td class="line">            <span \
class='keyword'>short</span> value = out.at&lt;<span \
                class='keyword'>short</span>&gt;(i,j);</td></tr>
-<tr><td class="num" id="LN372">372</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN373">373</td><td class="line">            <span \
                class='keyword'>if</span> (value &gt; maxLap)</td></tr>
-<tr><td class="num" id="LN374">374</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN375">375</td><td class="line">                maxLap = \
                value ;</td></tr>
-<tr><td class="num" id="LN376">376</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN377">377</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN378">378</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN379">379</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN380">380</td><td class="line">    <span \
                class='keyword'>return</span> maxLap;</td></tr>
-<tr><td class="num" id="LN381">381</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN383">383</td><td class="line"><span \
class='keyword'>double</span> ImgQSort::noisedetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN384">384</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN385">385</td><td class="line">    <span \
                class='keyword'>double</span> noiseresult = 0.0;</td></tr>
-<tr><td class="num" id="LN386">386</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN387">387</td><td class="line">    <span \
class='comment'>//--convert fimg to \
CvMat*-------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN388">388</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN389">389</td><td class="line">    <span class='comment'>// \
                Convert the image into YCrCb color model.</span></td></tr>
-<tr><td class="num" id="LN390">390</td><td class="line">    \
                NRFilter::srgb2ycbcr(d-&gt;fimg, \
                d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN391">391</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN392">392</td><td class="line">    <span class='comment'>// \
                One dimensional CvMat which stores the image.</span></td></tr>
-<tr><td class="num" id="LN393">393</td><td class="line">    CvMat* points    = \
cvCreateMat(d-&gt;neimage.numPixels(), 3, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN394">394</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN395">395</td><td class="line">    <span class='comment'>// \
                Matrix to store the index of the clusters.</span></td></tr>
-<tr><td class="num" id="LN396">396</td><td class="line">    CvMat* clusters  = \
cvCreateMat(d-&gt;neimage.numPixels(), 1, <span class='macro'>CV_32SC1<span \
class='expansion'>(((4) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN397">397</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN398">398</td><td class="line">    <span class='comment'>// \
Pointer variable to handle the CvMat* points (the image in CvMat \
                format).</span></td></tr>
-<tr><td class="num" id="LN399">399</td><td class="line">    <span \
class='keyword'>float</span>* pointsPtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(points-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN400">400</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN401">401</td><td class="line">    <span \
class='keyword'>for</span> (uint x=0 ; d-&gt;running &amp;&amp; (x &lt; \
                d-&gt;neimage.numPixels()) ; x++)</td></tr>
-<tr><td class="num" id="LN402">402</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN403">403</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> y=0 ; d-&gt;running \
                &amp;&amp; (y &lt; 3) ; y++)</td></tr>
-<tr><td class="num" id="LN404">404</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN405">405</td><td class="line">            *pointsPtr++ = \
                (<span class='keyword'>float</span>)d-&gt;fimg[y][x];</td></tr>
-<tr><td class="num" id="LN406">406</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN407">407</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN408">408</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN409">409</td><td class="line">    <span class='comment'>// \
                Array to store the centers of the clusters.</span></td></tr>
-<tr><td class="num" id="LN410">410</td><td class="line">    CvArr* centers = \
                0;</td></tr>
-<tr><td class="num" id="LN411">411</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN412">412</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
412, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Everything ready for the cvKmeans2 or as it seems \
                to"</span>;</td></tr>
-<tr><td class="num" id="LN413">413</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN414">414</td><td class="line">    <span \
class='comment'>//-- KMEANS \
---------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN415">415</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN416">416</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN417">417</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN418">418</td><td class="line">        cvKMeans2(points, \
                d-&gt;clusterCount, clusters,</td></tr>
-<tr><td class="num" id="LN419">419</td><td class="line">                  \
cvTermCriteria(<span class='macro'>CV_TERMCRIT_EPS<span \
class='expansion'>2</span></span> + <span class='macro'>CV_TERMCRIT_ITER<span \
                class='expansion'>1</span></span>, 10, 1.0), 3, 0, 0, centers, \
                0);</td></tr>
-<tr><td class="num" id="LN420">420</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN421">421</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN422">422</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
422, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"cvKmeans2 successfully run"</span>;</td></tr>
-<tr><td class="num" id="LN423">423</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN424">424</td><td class="line">    <span \
class='comment'>//-- Divide into cluster-&gt;columns, sample-&gt;rows, in matrix \
                standard deviation ---------------------------</span></td></tr>
-<tr><td class="num" id="LN425">425</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN426">426</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rowPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN427">427</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN428">428</td><td class="line">    <span class='comment'>// \
The row position array would just make the hold the number of elements in each \
                cluster.</span></td></tr>
-<tr><td class="num" id="LN429">429</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN430">430</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN431">431</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN432">432</td><td class="line">        <span \
                class='comment'>// Initializing the cluster count \
                array.</span></td></tr>
-<tr><td class="num" id="LN433">433</td><td class="line">        rowPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN434">434</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN435">435</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN436">436</td><td class="line">    <span \
                class='keyword'>int</span> rowIndex, columnIndex;</td></tr>
-<tr><td class="num" id="LN437">437</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN438">438</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;neimage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN439">439</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN440">440</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN441">441</td><td class="line">        \
                rowPosition[columnIndex]++;</td></tr>
-<tr><td class="num" id="LN442">442</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN443">443</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN444">444</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
444, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"array indexed, and ready to find \
                maximum"</span>;</td></tr>
-<tr><td class="num" id="LN445">445</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN446">446</td><td class="line">    <span \
class='comment'>//-- Finding maximum of the rowPosition array \
                ------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN447">447</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN448">448</td><td class="line">    <span \
                class='keyword'>int</span> max = rowPosition[0];</td></tr>
-<tr><td class="num" id="LN449">449</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN450">450</td><td class="line">    <span \
class='keyword'>for</span> (uint i=1 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN451">451</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN452">452</td><td class="line">        <span \
                class='keyword'>if</span> (rowPosition[i] &gt; max)</td></tr>
-<tr><td class="num" id="LN453">453</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN454">454</td><td class="line">            max = \
                rowPosition[i];</td></tr>
-<tr><td class="num" id="LN455">455</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN456">456</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN457">457</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN458">458</td><td class="line">    QString \
                maxString;</td></tr>
-<tr><td class="num" id="LN459">459</td><td class="line">    \
                maxString.append(QString::number(max));</td></tr>
-<tr><td class="num" id="LN460">460</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN461">461</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
461, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; \
QString::fromUtf8(<span class='string_literal'>"maximum declared = \
                %1"</span>).arg(maxString);</td></tr>
-<tr><td class="num" id="LN462">462</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN463">463</td><td class="line">    <span \
class='comment'>//-- Divide and conquer \
---------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN464">464</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN465">465</td><td class="line">    CvMat* sd = 0;</td></tr>
-<tr><td class="num" id="LN466">466</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN467">467</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN468">468</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN469">469</td><td class="line">        sd = \
cvCreateMat(max, (d-&gt;clusterCount * points-&gt;cols), <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN470">470</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN471">471</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN472">472</td><td class="line">    <span \
class='comment'>//-- Initialize the rowPosition array \
                -------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN473">473</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN474">474</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN475">475</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN476">476</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN477">477</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN478">478</td><td class="line">        rPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN479">479</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN480">480</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN481">481</td><td class="line">    <span \
                class='keyword'>float</span>* ptr = 0;</td></tr>
-<tr><td class="num" id="LN482">482</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN483">483</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
483, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"The rowPosition array is \
                ready!"</span>;</td></tr>
-<tr><td class="num" id="LN484">484</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN485">485</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; d-&gt;running &amp;&amp; (i &lt; \
                d-&gt;neimage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN486">486</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN487">487</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN488">488</td><td class="line">        rowIndex    = \
                rPosition[columnIndex];</td></tr>
-<tr><td class="num" id="LN489">489</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN490">490</td><td class="line">        <span \
                class='comment'>// Moving to the right row.</span></td></tr>
-<tr><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN492">492</td><td class="line">        ptr         = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(sd-&gt;data.ptr + \
                rowIndex*(sd-&gt;step));</td></tr>
-<tr><td class="num" id="LN493">493</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN494">494</td><td class="line">        <span \
                class='comment'>// Moving to the right column.</span></td></tr>
-<tr><td class="num" id="LN495">495</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN496">496</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; columnIndex) ; j++)</td></tr>
-<tr><td class="num" id="LN497">497</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN498">498</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z=0 ; d-&gt;running \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN499">499</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN500">500</td><td class="line">                \
                ptr++;</td></tr>
-<tr><td class="num" id="LN501">501</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN502">502</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN503">503</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN504">504</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z=0 ; d-&gt;running \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN505">505</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN506">506</td><td class="line">            *ptr++ = \
                cvGet2D(points, i, z).val[0];</td></tr>
-<tr><td class="num" id="LN507">507</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN508">508</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN509">509</td><td class="line">        \
                rPosition[columnIndex] = rPosition[columnIndex] + 1;</td></tr>
-<tr><td class="num" id="LN510">510</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN511">511</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN512">512</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
512, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"sd matrix creation over!"</span>;</td></tr>
-<tr><td class="num" id="LN513">513</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN514">514</td><td class="line">    <span \
class='comment'>//-- This part of the code would involve the sd matrix and make the \
                mean and the std of the data -------------</span></td></tr>
-<tr><td class="num" id="LN515">515</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN516">516</td><td class="line">    CvScalar std;</td></tr>
-<tr><td class="num" id="LN517">517</td><td class="line">    CvScalar mean;</td></tr>
-<tr><td class="num" id="LN518">518</td><td class="line">    CvMat*   meanStore    = \
                0;</td></tr>
-<tr><td class="num" id="LN519">519</td><td class="line">    CvMat*   stdStore     = \
                0;</td></tr>
-<tr><td class="num" id="LN520">520</td><td class="line">    <span \
                class='keyword'>float</span>*   meanStorePtr = 0;</td></tr>
-<tr><td class="num" id="LN521">521</td><td class="line">    <span \
                class='keyword'>float</span>*   stdStorePtr  = 0;</td></tr>
-<tr><td class="num" id="LN522">522</td><td class="line">    <span \
class='keyword'>int</span>      totalcount   = 0; <span class='comment'>// Number of \
                non-empty clusters.</span></td></tr>
-<tr><td class="num" id="LN523">523</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN524">524</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN525">525</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN526">526</td><td class="line">        meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN527">527</td><td class="line">        stdStore     = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN528">528</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN529">529</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN530">530</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN531">531</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN532">532</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i=0 ; d-&gt;running \
                &amp;&amp; (i &lt; sd-&gt;cols) ; i++)</td></tr>
-<tr><td class="num" id="LN533">533</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN534">534</td><td class="line">        <span \
class='keyword'>if</span> (d-&gt;running &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
                &gt;= 1))</td></tr>
-<tr><td class="num" id="LN535">535</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN536">536</td><td class="line">            CvMat* \
workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN537">537</td><td class="line">            ptr              \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN538">538</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN539">539</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; rowPosition[(i / (points-&gt;cols))]) ; \
                j++)</td></tr>
-<tr><td class="num" id="LN540">540</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN541">541</td><td class="line">                *ptr++ = \
                cvGet2D(sd, j, i).val[0];</td></tr>
-<tr><td class="num" id="LN542">542</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN543">543</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN544">544</td><td class="line">            \
                cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr>
-<tr><td class="num" id="LN545">545</td><td class="line">            *meanStorePtr++ \
                = (<span class='keyword'>float</span>)mean.val[0];</td></tr>
-<tr><td class="num" id="LN546">546</td><td class="line">            *stdStorePtr++  \
                = (<span class='keyword'>float</span>)std.val[0];</td></tr>
-<tr><td class="num" id="LN547">547</td><td class="line">            \
                totalcount++;</td></tr>
-<tr><td class="num" id="LN548">548</td><td class="line">            \
                cvReleaseMat(&amp;workingArr);</td></tr>
-<tr><td class="num" id="LN549">549</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN550">550</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN551">551</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN552">552</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
552, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Make the mean and the std of the \
                data"</span>;</td></tr>
-<tr><td class="num" id="LN553">553</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN554">554</td><td class="line">    <span class='comment'>// \
-----------------------------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN555">555</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN556">556</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN557">557</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN558">558</td><td class="line">        meanStorePtr = <span \
class="mrange"><span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr)</span>;</td></tr>
                
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" \
                style="margin-left:9ex">Value stored to 'meanStorePtr' is never \
                read</div></td></tr>
-<tr><td class="num" id="LN559">559</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN560">560</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN561">561</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN562">562</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
562, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
                std"</span>;</td></tr>
-<tr><td class="num" id="LN563">563</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN564">564</td><td class="line">    <span \
class='comment'>//-- Calculating weighted mean, and weighted std \
                -----------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN565">565</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN566">566</td><td class="line">    QString info;</td></tr>
-<tr><td class="num" id="LN567">567</td><td class="line">    <span \
                class='keyword'>float</span>   weightedMean = 0.0F;</td></tr>
-<tr><td class="num" id="LN568">568</td><td class="line">    <span \
                class='keyword'>float</span>   weightedStd  = 0.0F;</td></tr>
-<tr><td class="num" id="LN569">569</td><td class="line">    <span \
                class='keyword'>float</span>   datasd[3]    = {0.0F, 0.0F, \
                0.0F};</td></tr>
-<tr><td class="num" id="LN570">570</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN571">571</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j=0 ; d-&gt;running \
                &amp;&amp; (j &lt; points-&gt;cols) ; j++)</td></tr>
-<tr><td class="num" id="LN572">572</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN573">573</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN574">574</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN575">575</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN576">576</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> moveToChannel=0 ; \
                moveToChannel &lt;= j ; moveToChannel++)</td></tr>
-<tr><td class="num" id="LN577">577</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN578">578</td><td class="line">            \
                meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN579">579</td><td class="line">            \
                stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN580">580</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN581">581</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN582">582</td><td class="line">        <span \
                class='keyword'>for</span> (uint i=0 ; i &lt; d-&gt;clusterCount ; \
                i++)</td></tr>
-<tr><td class="num" id="LN583">583</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN584">584</td><td class="line">            <span \
                class='keyword'>if</span> (rowPosition[i] &gt;= 1)</td></tr>
-<tr><td class="num" id="LN585">585</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN586">586</td><td class="line">                weightedMean \
                += (*meanStorePtr) * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN587">587</td><td class="line">                weightedStd  \
                += (*stdStorePtr)  * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN588">588</td><td class="line">                meanStorePtr \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN589">589</td><td class="line">                stdStorePtr  \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN590">590</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN591">591</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN592">592</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN593">593</td><td class="line">        weightedMean = \
                weightedMean / (d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN594">594</td><td class="line">        weightedStd  = \
                weightedStd  / (d-&gt;neimage.numPixels());</td></tr>
-<tr><td class="num" id="LN595">595</td><td class="line">        datasd[j]    = \
                weightedStd;</td></tr>
-<tr><td class="num" id="LN596">596</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN597">597</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN598">598</td><td class="line">        \
                info.append(QString::number(j));</td></tr>
-<tr><td class="num" id="LN599">599</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Mean: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN600">600</td><td class="line">        \
                info.append(QString::number(weightedMean));</td></tr>
-<tr><td class="num" id="LN601">601</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Standard \
                Deviation: "</span>));</td></tr>
-<tr><td class="num" id="LN602">602</td><td class="line">        \
                info.append(QString::number(weightedStd));</td></tr>
-<tr><td class="num" id="LN603">603</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN604">604</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN605">605</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
605, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr>
-<tr><td class="num" id="LN606">606</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN607">607</td><td class="line">    <span class='comment'>// \
-- adaptation ---------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN608">608</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN609">609</td><td class="line">    <span \
                class='keyword'>if</span> (d-&gt;running)</td></tr>
-<tr><td class="num" id="LN610">610</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN611">611</td><td class="line">        <span \
                class='comment'>// For 16 bits images only.</span></td></tr>
-<tr><td class="num" id="LN612">612</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN613">613</td><td class="line">        <span \
                class='keyword'>if</span> (d-&gt;neimage.sixteenBit())</td></tr>
-<tr><td class="num" id="LN614">614</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN615">615</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i=0 ; i &lt; \
                points-&gt;cols ; i++)</td></tr>
-<tr><td class="num" id="LN616">616</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN617">617</td><td class="line">                datasd[i] = \
                datasd[i] / 256;</td></tr>
-<tr><td class="num" id="LN618">618</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN619">619</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN620">620</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN621">621</td><td class="line">        noiseresult = \
                ((datasd[0]/2)+(datasd[1]/2)+(datasd[2]/2))/3;</td></tr>
-<tr><td class="num" id="LN622">622</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN623">623</td><td class="line">        <span \
class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); \
qt_category_enabled; qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/database/imgqsort/imgqsort.cpp"<br>, \
623, __PRETTY_FUNCTION__, \
DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"All is completed"</span>;</td></tr>
-<tr><td class="num" id="LN624">624</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN625">625</td><td class="line">        <span \
class='comment'>//-- releasing matrices and closing files \
----------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN626">626</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN627">627</td><td class="line">        \
                cvReleaseMat(&amp;sd);</td></tr>
-<tr><td class="num" id="LN628">628</td><td class="line">        \
                cvReleaseMat(&amp;stdStore);</td></tr>
-<tr><td class="num" id="LN629">629</td><td class="line">        \
                cvReleaseMat(&amp;meanStore);</td></tr>
-<tr><td class="num" id="LN630">630</td><td class="line">        \
                cvReleaseMat(&amp;points);</td></tr>
-<tr><td class="num" id="LN631">631</td><td class="line">        \
                cvReleaseMat(&amp;clusters);</td></tr>
-<tr><td class="num" id="LN632">632</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN633">633</td><td class="line">        <span \
                class='keyword'>for</span> (uint i = 0; i &lt; 3; i++)</td></tr>
-<tr><td class="num" id="LN634">634</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN635">635</td><td class="line">            <span \
                class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr>
-<tr><td class="num" id="LN636">636</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN637">637</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN638">638</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN639">639</td><td class="line">    <span \
                class='keyword'>return</span> noiseresult;</td></tr>
-<tr><td class="num" id="LN640">640</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN641">641</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN642">642</td><td class="line"><span \
class='keyword'>int</span> ImgQSort::compressiondetector() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN643">643</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN644">644</td><td class="line">    <span \
class='comment'>//FIXME: set threshold value to an acceptable standard to get the \
                number of blocking artifacts</span></td></tr>
-<tr><td class="num" id="LN645">645</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>int</span> THRESHOLD  = \
                30;</td></tr>
-<tr><td class="num" id="LN646">646</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>int</span> block_size = \
                8;</td></tr>
-<tr><td class="num" id="LN647">647</td><td class="line">    <span \
                class='keyword'>int</span> countblocks      = 0;</td></tr>
-<tr><td class="num" id="LN648">648</td><td class="line">    <span \
                class='keyword'>int</span> number_of_blocks = 0;</td></tr>
-<tr><td class="num" id="LN649">649</td><td class="line">    <span \
                class='keyword'>int</span> sum              = 0;</td></tr>
-<tr><td class="num" id="LN650">650</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN651">651</td><td class="line">    std::vector&lt;<span \
                class='keyword'>int</span>&gt; average_bottom, average_middle, \
                average_top;</td></tr>
-<tr><td class="num" id="LN652">652</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN653">653</td><td class="line">    <span class='comment'>// \
                Go through 8 blocks at a time horizontally</span></td></tr>
-<tr><td class="num" id="LN654">654</td><td class="line">    <span class='comment'>// \
                iterating through columns.</span></td></tr>
-<tr><td class="num" id="LN655">655</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN656">656</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; d-&gt;running \
                &amp;&amp; i &lt; d-&gt;src_gray.rows; i++)</td></tr>
-<tr><td class="num" id="LN657">657</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN658">658</td><td class="line">        <span \
                class='comment'>// Calculating intensity of top \
                column.</span></td></tr>
-<tr><td class="num" id="LN659">659</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN660">660</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN661">661</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN662">662</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN663">663</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN664">664</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN665">665</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN666">666</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j);</td></tr>
-<tr><td class="num" id="LN667">667</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN668">668</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN669">669</td><td class="line">            \
                average_top.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN670">670</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN671">671</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN672">672</td><td class="line">        <span \
                class='comment'>// Calculating intensity of middle \
                column.</span></td></tr>
-<tr><td class="num" id="LN673">673</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN674">674</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN675">675</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN676">676</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN677">677</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN678">678</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN679">679</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN680">680</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i+1, \
                j);</td></tr>
-<tr><td class="num" id="LN681">681</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN682">682</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN683">683</td><td class="line">            \
                average_middle.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN684">684</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN685">685</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN686">686</td><td class="line">        <span \
                class='comment'>// Calculating intensity of bottom \
                column.</span></td></tr>
-<tr><td class="num" id="LN687">687</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN688">688</td><td class="line">        countblocks = \
                0;</td></tr>
-<tr><td class="num" id="LN689">689</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN690">690</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                d-&gt;src_gray.cols; j+=8)</td></tr>
-<tr><td class="num" id="LN691">691</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN692">692</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN693">693</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN694">694</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = j; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN695">695</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN696">696</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i+2, \
                j);</td></tr>
-<tr><td class="num" id="LN697">697</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN698">698</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN699">699</td><td class="line">            \
                average_bottom.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN700">700</td><td class="line">            \
                countblocks++;</td></tr>
-<tr><td class="num" id="LN701">701</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN702">702</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN703">703</td><td class="line">        <span \
class='comment'>// Check if the average intensity of 8 blocks in the top, middle and \
                bottom rows are equal.</span></td></tr>
-<tr><td class="num" id="LN704">704</td><td class="line">        <span \
                class='comment'>// If so increment number_of_blocks.</span></td></tr>
-<tr><td class="num" id="LN705">705</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN706">706</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; j &lt; \
                countblocks; j++)</td></tr>
-<tr><td class="num" id="LN707">707</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN708">708</td><td class="line">            <span \
class='keyword'>if</span> ((average_middle[j] == \
                (average_top[j]+average_bottom[j])/2) &amp;&amp;</td></tr>
-<tr><td class="num" id="LN709">709</td><td class="line">                \
                average_middle[j] &gt; THRESHOLD)</td></tr>
-<tr><td class="num" id="LN710">710</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN711">711</td><td class="line">                \
                number_of_blocks++;</td></tr>
-<tr><td class="num" id="LN712">712</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN713">713</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN714">714</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN715">715</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN716">716</td><td class="line">    \
                average_bottom.clear();</td></tr>
-<tr><td class="num" id="LN717">717</td><td class="line">    \
                average_middle.clear();</td></tr>
-<tr><td class="num" id="LN718">718</td><td class="line">    \
                average_top.clear();</td></tr>
-<tr><td class="num" id="LN719">719</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN720">720</td><td class="line">    <span class='comment'>// \
                Iterating through rows.</span></td></tr>
-<tr><td class="num" id="LN721">721</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN722">722</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0; d-&gt;running \
                &amp;&amp; j &lt; d-&gt;src_gray.cols; j++)</td></tr>
-<tr><td class="num" id="LN723">723</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN724">724</td><td class="line">        <span \
                class='comment'>// Calculating intensity of top row.</span></td></tr>
-<tr><td class="num" id="LN725">725</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN726">726</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN727">727</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN728">728</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN729">729</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN730">730</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN731">731</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN732">732</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j);</td></tr>
-<tr><td class="num" id="LN733">733</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN734">734</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN735">735</td><td class="line">            \
                average_top.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN736">736</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN737">737</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN738">738</td><td class="line">        <span \
                class='comment'>// Calculating intensity of middle \
                row.</span></td></tr>
-<tr><td class="num" id="LN739">739</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN740">740</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i= 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN741">741</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN742">742</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN743">743</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN744">744</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN745">745</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN746">746</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j+1);</td></tr>
-<tr><td class="num" id="LN747">747</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN748">748</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN749">749</td><td class="line">            \
                average_middle.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN750">750</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN751">751</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN752">752</td><td class="line">        <span \
                class='comment'>// Calculating intensity of bottom \
                row.</span></td></tr>
-<tr><td class="num" id="LN753">753</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN754">754</td><td class="line">        countblocks = \
                0;</td></tr>
-<tr><td class="num" id="LN755">755</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN756">756</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                d-&gt;src_gray.rows; i+=8)</td></tr>
-<tr><td class="num" id="LN757">757</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN758">758</td><td class="line">            sum = \
                0;</td></tr>
-<tr><td class="num" id="LN759">759</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN760">760</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> k = i; k &lt; \
                block_size; k++)</td></tr>
-<tr><td class="num" id="LN761">761</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN762">762</td><td class="line">                sum += \
                (<span class='keyword'>int</span>)d-&gt;src_gray.at&lt;uchar&gt;(i, \
                j+2);</td></tr>
-<tr><td class="num" id="LN763">763</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN764">764</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN765">765</td><td class="line">            \
                average_bottom.push_back(sum/8);</td></tr>
-<tr><td class="num" id="LN766">766</td><td class="line">            \
                countblocks++;</td></tr>
-<tr><td class="num" id="LN767">767</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN768">768</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN769">769</td><td class="line">        <span \
class='comment'>// Check if the average intensity of 8 blocks in the top, middle and \
                bottom rows are equal.</span></td></tr>
-<tr><td class="num" id="LN770">770</td><td class="line">        <span \
                class='comment'>// If so increment number_of_blocks.</span></td></tr>
-<tr><td class="num" id="LN771">771</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN772">772</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; \
                countblocks; i++)</td></tr>
-<tr><td class="num" id="LN773">773</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN774">774</td><td class="line">            <span \
class='keyword'>if</span> ((average_middle[i] == \
                (average_top[i]+average_bottom[i])/2) &amp;&amp;</td></tr>
-<tr><td class="num" id="LN775">775</td><td class="line">                \
                average_middle[i] &gt; THRESHOLD)</td></tr>
-<tr><td class="num" id="LN776">776</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN777">777</td><td class="line">                \
                number_of_blocks++;</td></tr>
-<tr><td class="num" id="LN778">778</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN779">779</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN780">780</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN781">781</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN782">782</td><td class="line">    <span \
                class='keyword'>return</span> number_of_blocks;</td></tr>
-<tr><td class="num" id="LN783">783</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN784">784</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN785">785</td><td class="line"><span \
class='keyword'>int</span> ImgQSort::exposureamount() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN786">786</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN787">787</td><td class="line">    <span \
                class='comment'>/// Separate the image in 3 places ( B, G and R \
                )</span></td></tr>
-<tr><td class="num" id="LN788">788</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN789">789</td><td class="line">    std::vector&lt;Mat&gt; \
                bgr_planes;</td></tr>
-<tr><td class="num" id="LN790">790</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN791">791</td><td class="line">    split(d-&gt;src, \
                bgr_planes);</td></tr>
-<tr><td class="num" id="LN792">792</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN793">793</td><td class="line">    <span \
                class='comment'>/// Establish the number of bins</span></td></tr>
-<tr><td class="num" id="LN794">794</td><td class="line">    <span \
                class='keyword'>int</span> histSize           = 256;</td></tr>
-<tr><td class="num" id="LN795">795</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN796">796</td><td class="line">    <span \
                class='comment'>/// Set the ranges ( for B,G,R) )</span></td></tr>
-<tr><td class="num" id="LN797">797</td><td class="line">    <span \
                class='keyword'>float</span> range[]          = { 0, 256 } \
                ;</td></tr>
-<tr><td class="num" id="LN798">798</td><td class="line">    <span \
class='keyword'>const</span> <span class='keyword'>float</span>* histRange = { range \
                };</td></tr>
-<tr><td class="num" id="LN799">799</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN800">800</td><td class="line">    <span \
class='keyword'>bool</span> uniform           = <span \
                class='keyword'>true</span>;</td></tr>
-<tr><td class="num" id="LN801">801</td><td class="line">    <span \
class='keyword'>bool</span> accumulate        = <span \
                class='keyword'>false</span>;</td></tr>
-<tr><td class="num" id="LN802">802</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN803">803</td><td class="line">    Mat b_hist, g_hist, \
                r_hist;</td></tr>
-<tr><td class="num" id="LN804">804</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN805">805</td><td class="line">    <span \
                class='comment'>/// Compute the histograms</span></td></tr>
-<tr><td class="num" id="LN806">806</td><td class="line">    \
calcHist(&amp;bgr_planes[0], 1, 0, Mat(), b_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN807">807</td><td class="line">    \
calcHist(&amp;bgr_planes[1], 1, 0, Mat(), g_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN808">808</td><td class="line">    \
calcHist(&amp;bgr_planes[2], 1, 0, Mat(), r_hist, 1, &amp;histSize, &amp;histRange, \
                uniform, accumulate);</td></tr>
-<tr><td class="num" id="LN809">809</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN810">810</td><td class="line">    <span class='comment'>// \
                Draw the histograms for B, G and R</span></td></tr>
-<tr><td class="num" id="LN811">811</td><td class="line">    <span \
                class='keyword'>int</span> hist_w = 512;</td></tr>
-<tr><td class="num" id="LN812">812</td><td class="line">    <span \
                class='keyword'>int</span> hist_h = 400;</td></tr>
-<tr><td class="num" id="LN813">813</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN814">814</td><td class="line">    Mat histImage( hist_h, \
hist_w, <span class='macro'>CV_8UC3<span class='expansion'>(((0) &amp; ((1 &lt;&lt; \
                3) - 1)) + (((3)-1) &lt;&lt; 3))</span></span>, Scalar( 0,0,0) \
                );</td></tr>
-<tr><td class="num" id="LN815">815</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN816">816</td><td class="line">    <span \
                class='comment'>/// Normalize the histograms:</span></td></tr>
-<tr><td class="num" id="LN817">817</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN818">818</td><td class="line">    normalize(b_hist, \
                b_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN819">819</td><td class="line">    normalize(g_hist, \
                g_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN820">820</td><td class="line">    normalize(r_hist, \
                r_hist, 0, histImage.rows, NORM_MINMAX, -1, Mat());</td></tr>
-<tr><td class="num" id="LN821">821</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN822">822</td><td class="line">    <span \
                class='comment'>/// Sum the histograms</span></td></tr>
-<tr><td class="num" id="LN823">823</td><td class="line">    Scalar \
                rmean,gmean,bmean;</td></tr>
-<tr><td class="num" id="LN824">824</td><td class="line">    rmean             = \
                mean(r_hist);</td></tr>
-<tr><td class="num" id="LN825">825</td><td class="line">    gmean             = \
                mean(g_hist);</td></tr>
-<tr><td class="num" id="LN826">826</td><td class="line">    bmean             = \
                mean(b_hist);</td></tr>
-<tr><td class="num" id="LN827">827</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN828">828</td><td class="line">    <span \
class='keyword'>int</span> exposurelevel = (rmean[0] + gmean[0] + bmean[0]) / \
                3;</td></tr>
-<tr><td class="num" id="LN829">829</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN830">830</td><td class="line">    <span \
                class='keyword'>return</span> exposurelevel;</td></tr>
-<tr><td class="num" id="LN831">831</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN832">832</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN833">833</td><td class="line">} <span class='comment'>// \
                namespace Digikam</span></td></tr>
-</table></body></html>
diff --git a/static/reports/clang/master/report-6749c4.html \
b/static/reports/clang/master/report-6749c4.html deleted file mode 100644
index d3cd5709..00000000
--- a/static/reports/clang/master/report-6749c4.html
+++ /dev/null
@@ -1,612 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp</title>
-<style type="text/css">
- body { color:#000000; background-color:#ffffff }
- body { font-family:Helvetica, sans-serif; font-size:10pt }
- h1 { font-size:14pt }
- .code { border-collapse:collapse; width:100%; }
- .code { font-family: "Monospace", monospace; font-size:10pt }
- .code { line-height: 1.2em }
- .comment { color: green; font-style: oblique }
- .keyword { color: blue }
- .string_literal { color: red }
- .directive { color: darkmagenta }
- .expansion { display: none; }
- .macro:hover .expansion { display: block; border: 2px solid #FF0000; padding: 2px; \
background-color:#FFF0F0; font-weight: normal;   -webkit-border-radius:5px;  \
-webkit-box-shadow:1px 1px 7px #000; position: absolute; top: -1em; left:10em; \
                z-index: 1 } 
- .macro { color: darkmagenta; background-color:LemonChiffon; position: relative }
- .num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
- .num { text-align:right; font-size:8pt }
- .num { color:#444444 }
- .line { padding-left: 1ex; border-left: 3px solid #ccc }
- .line { white-space: pre }
- .msg { -webkit-box-shadow:1px 1px 7px #000 }
- .msg { -webkit-border-radius:5px }
- .msg { font-family:Helvetica, sans-serif; font-size:8pt }
- .msg { float:left }
- .msg { padding:0.25em 1ex 0.25em 1ex }
- .msg { margin-top:10px; margin-bottom:10px }
- .msg { font-weight:bold }
- .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
- .msgT { padding:0x; spacing:0x }
- .msgEvent { background-color:#fff8b4; color:#000000 }
- .msgControl { background-color:#bbbbbb; color:#000000 }
- .mrange { background-color:#dfddf3 }
- .mrange { border-bottom:1px solid #6F9DBE }
- .PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
- .PathIndex { -webkit-border-radius:8px }
- .PathIndexEvent { background-color:#bfba87 }
- .PathIndexControl { background-color:#8c8c8c }
- .PathNav a { text-decoration:none; font-size: larger }
- .CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
- .CodeRemovalHint { background-color:#de1010 }
- .CodeRemovalHint { border-bottom:1px solid #6F9DBE }
- table.simpletable {
-   padding: 5px;
-   font-size:12pt;
-   margin:20px;
-   border-collapse: collapse; border-spacing: 0px;
- }
- td.rowname {
-   text-align:right; font-weight:bold; color:#444444;
-   padding-right:2ex; }
-</style>
-</head>
-<body>
-<!-- BUGDESC Dereference of null pointer -->
-
-<!-- BUGTYPE Dereference of null pointer -->
-
-<!-- BUGCATEGORY Logic error -->
-
-<!-- BUGFILE /mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp -->
-
-<!-- FILENAME nrestimate.cpp -->
-
-<!-- FUNCTIONNAME startAnalyse -->
-
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT cd764e5ca99ba266edc850757c6ea7b4 -->
-
-<!-- BUGLINE 319 -->
-
-<!-- BUGCOLUMN 49 -->
-
-<!-- BUGPATHLENGTH 6 -->
-
-<!-- BUGMETAEND -->
-<!-- REPORTHEADER -->
-<h3>Bug Summary</h3>
-<table class="simpletable">
-<tr><td class="rowname">File:</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td></tr>
                
-<tr><td class="rowname">Location:</td><td><a href="#EndPath">line 319, column \
                49</a></td></tr>
-<tr><td class="rowname">Description:</td><td>Dereference of null pointer</td></tr>
-</table>
-<!-- REPORTSUMMARYEXTRA -->
-<h3>Annotated Source Code</h3>
-<table class="code">
-<tr><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* \
                ============================================================</span></td></tr>
                
-<tr><td class="num" id="LN2">2</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This \
                file is a part of digiKam project</span></td></tr>
-<tr><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* \
                http://www.digikam.org</span></td></tr>
-<tr><td class="num" id="LN5">5</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date    \
                : 2012-10-18</span></td></tr>
-<tr><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* \
Description : Wavelets YCrCb Noise Reduction settings estimation by image content \
                analys.</span></td></tr>
-<tr><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*         \
                Wavelets theory is based on "À Trous" Discrete Wavelet \
                Transform</span></td></tr>
-<tr><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>*         \
                described into "The Handbook of Astronomical Image Processing" \
                book</span></td></tr>
-<tr><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*       \
                from Richard Berry and James Burnell, chapter 18.</span></td></tr>
-<tr><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*       \
                See this wiki page for details:</span></td></tr>
-<tr><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*       \
                http://community.kde.org/Digikam/SoK2012/AutoNR</span></td></tr>
-<tr><td class="num" id="LN13">13</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* \
Copyright (C) 2012-2013 by Sayantan Datta &lt;sayantan dot knz at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* \
Copyright (C) 2012-2018 by Gilles Caulier &lt;caulier dot gilles at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN16">16</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This \
                program is free software; you can redistribute it</span></td></tr>
-<tr><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* \
                and/or modify it under the terms of the GNU General</span></td></tr>
-<tr><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* \
                Public License as published by the Free Software \
                Foundation;</span></td></tr>
-<tr><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* \
                either version 2, or (at your option)</span></td></tr>
-<tr><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* any \
                later version.</span></td></tr>
-<tr><td class="num" id="LN22">22</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* This \
                program is distributed in the hope that it will be \
                useful,</span></td></tr>
-<tr><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* but \
                WITHOUT ANY WARRANTY; without even the implied warranty \
                of</span></td></tr>
-<tr><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>* \
                MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See \
                the</span></td></tr>
-<tr><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* GNU \
                General Public License for more details.</span></td></tr>
-<tr><td class="num" id="LN27">27</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* \
                ============================================================ \
                */</span></td></tr>
-<tr><td class="num" id="LN29">29</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN30">30</td><td class="line"><span \
                class='directive'>#include "nrestimate.h"</span></td></tr>
-<tr><td class="num" id="LN31">31</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN32">32</td><td class="line"><span class='comment'>// C++ \
                includes</span></td></tr>
-<tr><td class="num" id="LN33">33</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN34">34</td><td class="line"><span \
                class='directive'>#include &lt;cmath&gt;</span></td></tr>
-<tr><td class="num" id="LN35">35</td><td class="line"><span \
                class='directive'>#include &lt;cfloat&gt;</span></td></tr>
-<tr><td class="num" id="LN36">36</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN37">37</td><td class="line"><span class='comment'>// \
                OpenCV includes</span></td></tr>
-<tr><td class="num" id="LN38">38</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN39">39</td><td class="line"><span \
                class='directive'>#include "digikam_opencv.h"</span></td></tr>
-<tr><td class="num" id="LN40">40</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN41">41</td><td class="line"><span class='comment'>// Qt \
                includes.</span></td></tr>
-<tr><td class="num" id="LN42">42</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN43">43</td><td class="line"><span \
                class='directive'>#include &lt;QTextStream&gt;</span></td></tr>
-<tr><td class="num" id="LN44">44</td><td class="line"><span \
                class='directive'>#include &lt;QFile&gt;</span></td></tr>
-<tr><td class="num" id="LN45">45</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local \
                includes</span></td></tr>
-<tr><td class="num" id="LN47">47</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN48">48</td><td class="line"><span \
                class='directive'>#include "digikam_debug.h"</span></td></tr>
-<tr><td class="num" id="LN49">49</td><td class="line"><span \
                class='directive'>#include "nrfilter.h"</span></td></tr>
-<tr><td class="num" id="LN50">50</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN51">51</td><td class="line"><span \
                class='keyword'>namespace</span> Digikam</td></tr>
-<tr><td class="num" id="LN52">52</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN53">53</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN54">54</td><td class="line"><span \
class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span \
class='expansion'>__attribute__((visibility("hidden")))</span></span> \
                NREstimate::Private</td></tr>
-<tr><td class="num" id="LN55">55</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN56">56</td><td class="line"><span \
                class='keyword'>public</span>:</td></tr>
-<tr><td class="num" id="LN57">57</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN58">58</td><td class="line">    <span \
                class='keyword'>explicit</span> Private()</td></tr>
-<tr><td class="num" id="LN59">59</td><td class="line">      : \
                clusterCount(30),</td></tr>
-<tr><td class="num" id="LN60">60</td><td class="line">        size(512)</td></tr>
-<tr><td class="num" id="LN61">61</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
                c++)</td></tr>
-<tr><td class="num" id="LN63">63</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN64">64</td><td class="line">            fimg[c] = \
                0;</td></tr>
-<tr><td class="num" id="LN65">65</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN66">66</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN67">67</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN68">68</td><td class="line">    NRContainer prm;</td></tr>
-<tr><td class="num" id="LN69">69</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN70">70</td><td class="line">    QString     path;   <span \
                class='comment'>// Path to host log files.</span></td></tr>
-<tr><td class="num" id="LN71">71</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN72">72</td><td class="line">    <span \
                class='keyword'>float</span>*      fimg[3];</td></tr>
-<tr><td class="num" id="LN73">73</td><td class="line">    <span \
                class='keyword'>const</span> uint  clusterCount;</td></tr>
-<tr><td class="num" id="LN74">74</td><td class="line">    <span \
class='keyword'>const</span> uint  size;   <span class='comment'>// Size of squared \
                original image.</span></td></tr>
-<tr><td class="num" id="LN75">75</td><td class="line">};</td></tr>
-<tr><td class="num" id="LN76">76</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN77">77</td><td class="line">NREstimate::NREstimate(DImg* \
<span class='keyword'>const</span> img, QObject* <span class='keyword'>const</span> \
                parent)</td></tr>
-<tr><td class="num" id="LN78">78</td><td class="line">    : \
DImgThreadedAnalyser(parent, QLatin1String(<span \
                class='string_literal'>"NREstimate"</span>)),</td></tr>
-<tr><td class="num" id="LN79">79</td><td class="line">      d(<span \
                class='keyword'>new</span> Private)</td></tr>
-<tr><td class="num" id="LN80">80</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN81">81</td><td class="line">    <span class='comment'>// \
Use the Top/Left corner of 256x256 pixels to analys noise contents from \
                image.</span></td></tr>
-<tr><td class="num" id="LN82">82</td><td class="line">    <span class='comment'>// \
                This will speed-up computation time with OpenCV</span></td></tr>
-<tr><td class="num" id="LN83">83</td><td class="line">    <span \
class='keyword'>int</span> w = (img-&gt;width()  &gt; d-&gt;size) ? d-&gt;size : \
                img-&gt;width();</td></tr>
-<tr><td class="num" id="LN84">84</td><td class="line">    <span \
class='keyword'>int</span> h = (img-&gt;height() &gt; d-&gt;size) ? d-&gt;size : \
                img-&gt;height();</td></tr>
-<tr><td class="num" id="LN85">85</td><td class="line">    \
                setOriginalImage(img-&gt;copy(0, 0, w, h));</td></tr>
-<tr><td class="num" id="LN86">86</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN87">87</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN88">88</td><td \
                class="line">NREstimate::~NREstimate()</td></tr>
-<tr><td class="num" id="LN89">89</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN90">90</td><td class="line">    <span \
                class='keyword'>delete</span> d;</td></tr>
-<tr><td class="num" id="LN91">91</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN92">92</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN93">93</td><td class="line"><span \
class='keyword'>void</span> NREstimate::setLogFilesPath(<span \
                class='keyword'>const</span> QString&amp; path)</td></tr>
-<tr><td class="num" id="LN94">94</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN95">95</td><td class="line">    d-&gt;path = \
                path;</td></tr>
-<tr><td class="num" id="LN96">96</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN97">97</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN98">98</td><td class="line"><span \
class='keyword'>void</span> NREstimate::readImage() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN99">99</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN100">100</td><td class="line">    DColor col;</td></tr>
-<tr><td class="num" id="LN101">101</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN102">102</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; runningFlag() \
                &amp;&amp; (c &lt; 3) ; c++)</td></tr>
-<tr><td class="num" id="LN103">103</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN104">104</td><td class="line">        d-&gt;fimg[c] = \
<span class='keyword'>new</span> <span \
                class='keyword'>float</span>[m_orgImage.numPixels()];</td></tr>
-<tr><td class="num" id="LN105">105</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN106">106</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN107">107</td><td class="line">    <span \
                class='keyword'>int</span> j = 0;</td></tr>
-<tr><td class="num" id="LN108">108</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN109">109</td><td class="line">    <span \
class='keyword'>for</span> (uint y = 0 ; runningFlag() &amp;&amp; (y &lt; \
                m_orgImage.height()) ; y++)</td></tr>
-<tr><td class="num" id="LN110">110</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN111">111</td><td class="line">        <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
                m_orgImage.width()) ; x++)</td></tr>
-<tr><td class="num" id="LN112">112</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN113">113</td><td class="line">            col           = \
                m_orgImage.getPixelColor(x, y);</td></tr>
-<tr><td class="num" id="LN114">114</td><td class="line">            d-&gt;fimg[0][j] \
                = col.red();</td></tr>
-<tr><td class="num" id="LN115">115</td><td class="line">            d-&gt;fimg[1][j] \
                = col.green();</td></tr>
-<tr><td class="num" id="LN116">116</td><td class="line">            d-&gt;fimg[2][j] \
                = col.blue();</td></tr>
-<tr><td class="num" id="LN117">117</td><td class="line">            j++;</td></tr>
-<tr><td class="num" id="LN118">118</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN119">119</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN120">120</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN121">121</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN122">122</td><td class="line">NRContainer \
                NREstimate::settings() <span class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN123">123</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN124">124</td><td class="line">    <span \
                class='keyword'>return</span> d-&gt;prm;</td></tr>
-<tr><td class="num" id="LN125">125</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN126">126</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN127">127</td><td class="line"><span \
                class='keyword'>void</span> NREstimate::startAnalyse()</td></tr>
-<tr><td class="num" id="LN128">128</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN129">129</td><td class="line">    readImage();</td></tr>
-<tr><td class="num" id="LN130">130</td><td class="line">    \
                postProgress(5);</td></tr>
-<tr><td class="num" id="LN131">131</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN132">132</td><td class="line">    <span \
class='comment'>//--convert fimg to \
CvMat*-------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN133">133</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN134">134</td><td class="line">    <span class='comment'>// \
                convert the image into YCrCb color model</span></td></tr>
-<tr><td class="num" id="LN135">135</td><td class="line">    \
                NRFilter::srgb2ycbcr(d-&gt;fimg, m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN136">136</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN137">137</td><td class="line">    <span class='comment'>// \
                One dimensional CvMat which stores the image</span></td></tr>
-<tr><td class="num" id="LN138">138</td><td class="line">    CvMat* points    = \
cvCreateMat(m_orgImage.numPixels(), 3, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN139">139</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN140">140</td><td class="line">    <span class='comment'>// \
                matrix to store the index of the clusters</span></td></tr>
-<tr><td class="num" id="LN141">141</td><td class="line">    CvMat* clusters  = \
cvCreateMat(m_orgImage.numPixels(), 1, <span class='macro'>CV_32SC1<span \
class='expansion'>(((4) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN142">142</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN143">143</td><td class="line">    <span class='comment'>// \
pointer variable to handle the CvMat* points (the image in CvMat \
                format)</span></td></tr>
-<tr><td class="num" id="LN144">144</td><td class="line">    <span \
class='keyword'>float</span>* pointsPtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(points-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN145">145</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN146">146</td><td class="line">    <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
                m_orgImage.numPixels()) ; x++)</td></tr>
-<tr><td class="num" id="LN147">147</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN148">148</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> y = 0 ; runningFlag() \
                &amp;&amp; (y &lt; 3) ; y++)</td></tr>
-<tr><td class="num" id="LN149">149</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN150">150</td><td class="line">            *pointsPtr++ = \
                (<span class='keyword'>float</span>)d-&gt;fimg[y][x];</td></tr>
-<tr><td class="num" id="LN151">151</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN152">152</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN153">153</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN154">154</td><td class="line">    <span class='comment'>// \
                Array to store the centers of the clusters</span></td></tr>
-<tr><td class="num" id="LN155">155</td><td class="line">    CvArr* centers = \
                0;</td></tr>
-<tr><td class="num" id="LN156">156</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN157">157</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
157, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Everything ready for the cvKmeans2 or as it seems \
                to"</span>;</td></tr>
-<tr><td class="num" id="LN158">158</td><td class="line">    \
                postProgress(10);</td></tr>
-<tr><td class="num" id="LN159">159</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN160">160</td><td class="line">    <span \
class='comment'>//-- KMEANS \
---------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN161">161</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN162">162</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">1</div></td><td>Taking false branch</td><td><div \
class="PathNav"><a href="#Path2" title="Next event \
                (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN163">163</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN164">164</td><td class="line">        cvKMeans2(points, \
                d-&gt;clusterCount, clusters,</td></tr>
-<tr><td class="num" id="LN165">165</td><td class="line">                  \
cvTermCriteria(<span class='macro'>CV_TERMCRIT_EPS<span \
class='expansion'>2</span></span> + <span class='macro'>CV_TERMCRIT_ITER<span \
                class='expansion'>1</span></span>, 10, 1.0), 3, 0, 0, centers, \
                0);</td></tr>
-<tr><td class="num" id="LN166">166</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN167">167</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN168">168</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
168, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"cvKmeans2 successfully run"</span>;</td></tr>
-<tr><td class="num" id="LN169">169</td><td class="line">    \
                postProgress(15);</td></tr>
-<tr><td class="num" id="LN170">170</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN171">171</td><td class="line">    <span \
class='comment'>//-- Divide into cluster-&gt;columns, sample-&gt;rows, in matrix \
                standard deviation ---------------------------</span></td></tr>
-<tr><td class="num" id="LN172">172</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN173">173</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rowPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN174">174</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN175">175</td><td class="line">    <span \
class='comment'>//the row position array would just make the hold the number of \
                elements in each cluster</span></td></tr>
-<tr><td class="num" id="LN176">176</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN177">177</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN178">178</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN179">179</td><td class="line">        <span \
                class='comment'>//initializing the cluster count \
                array</span></td></tr>
-<tr><td class="num" id="LN180">180</td><td class="line">        rowPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN181">181</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN182">182</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN183">183</td><td class="line">    <span \
                class='keyword'>int</span> rowIndex, columnIndex;</td></tr>
-<tr><td class="num" id="LN184">184</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN185">185</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                m_orgImage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN186">186</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN187">187</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN188">188</td><td class="line">        \
                rowPosition[columnIndex]++;</td></tr>
-<tr><td class="num" id="LN189">189</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN190">190</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN191">191</td><td class="line"><span \
                class='comment'>/*</span></td></tr>
-<tr><td class="num" id="LN192">192</td><td class="line">    <span \
class='comment'>qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Lets see what the rowPosition \
                array looks like : ";</span></td></tr>
-<tr><td class="num" id="LN193">193</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN194">194</td><td class="line">    <span \
class='comment'>for(uint i = 0 ; runningFlag() &amp;&amp; (i &lt; d-&gt;clusterCount) \
                ; i++)</span></td></tr>
-<tr><td class="num" id="LN195">195</td><td class="line">    <span \
                class='comment'>{</span></td></tr>
-<tr><td class="num" id="LN196">196</td><td class="line">        <span \
class='comment'>qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Cluster : "&lt;&lt; i &lt;&lt; " \
                the count is :" &lt;&lt; rowPosition[i];</span></td></tr>
-<tr><td class="num" id="LN197">197</td><td class="line">    <span \
                class='comment'>}</span></td></tr>
-<tr><td class="num" id="LN198">198</td><td class="line"><span \
                class='comment'>*/</span></td></tr>
-<tr><td class="num" id="LN199">199</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN200">200</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
200, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"array indexed, and ready to find \
                maximum"</span>;</td></tr>
-<tr><td class="num" id="LN201">201</td><td class="line">    \
                postProgress(20);</td></tr>
-<tr><td class="num" id="LN202">202</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN203">203</td><td class="line">    <span \
class='comment'>//-- Finding maximum of the rowPosition array \
                ------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN204">204</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN205">205</td><td class="line">    <span \
                class='keyword'>int</span> max = rowPosition[0];</td></tr>
-<tr><td class="num" id="LN206">206</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN207">207</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 1 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN208">208</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN209">209</td><td class="line">        <span \
                class='keyword'>if</span> (rowPosition[i] &gt; max)</td></tr>
-<tr><td class="num" id="LN210">210</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN211">211</td><td class="line">            max = \
                rowPosition[i];</td></tr>
-<tr><td class="num" id="LN212">212</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN213">213</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN214">214</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN215">215</td><td class="line">    QString \
                maxString;</td></tr>
-<tr><td class="num" id="LN216">216</td><td class="line">    \
                maxString.append(QString::number(max));</td></tr>
-<tr><td class="num" id="LN217">217</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN218">218</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
218, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; \
QString::fromLatin1(<span class='string_literal'>"maximum declared = \
                %1"</span>).arg(maxString);</td></tr>
-<tr><td class="num" id="LN219">219</td><td class="line">    \
                postProgress(25);</td></tr>
-<tr><td class="num" id="LN220">220</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN221">221</td><td class="line">    <span \
class='comment'>//-- Divide and conquer \
---------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN222">222</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN223">223</td><td class="line">    CvMat* sd = 0;</td></tr>
-<tr><td class="num" id="LN224">224</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN225">225</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a \
href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path3" title="Next event \
                (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN226">226</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN227">227</td><td class="line">        sd = \
cvCreateMat(max, (d-&gt;clusterCount * points-&gt;cols), <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN228">228</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN229">229</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN230">230</td><td class="line">    \
                postProgress(30);</td></tr>
-<tr><td class="num" id="LN231">231</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN232">232</td><td class="line">    <span \
class='comment'>//-- Initialize the rowPosition array \
                -------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN233">233</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN234">234</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN235">235</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN236">236</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN237">237</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN238">238</td><td class="line">        rPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN239">239</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN240">240</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN241">241</td><td class="line">    <span \
                class='keyword'>float</span>* ptr = 0;</td></tr>
-<tr><td class="num" id="LN242">242</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN243">243</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
243, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"The rowPosition array is \
                ready!"</span>;</td></tr>
-<tr><td class="num" id="LN244">244</td><td class="line">    \
                postProgress(40);</td></tr>
-<tr><td class="num" id="LN245">245</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN246">246</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; runningFlag() &amp;&amp; (i &lt; \
                m_orgImage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN247">247</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN248">248</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN249">249</td><td class="line">        rowIndex    = \
                rPosition[columnIndex];</td></tr>
-<tr><td class="num" id="LN250">250</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN251">251</td><td class="line">        <span \
                class='comment'>//moving to the right row</span></td></tr>
-<tr><td class="num" id="LN252">252</td><td class="line">        ptr         = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(sd-&gt;data.ptr + \
                rowIndex*(sd-&gt;step));</td></tr>
-<tr><td class="num" id="LN253">253</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN254">254</td><td class="line">        <span \
                class='comment'>//moving to the right column</span></td></tr>
-<tr><td class="num" id="LN255">255</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; columnIndex) ; j++)</td></tr>
-<tr><td class="num" id="LN256">256</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN257">257</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN258">258</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN259">259</td><td class="line">                \
                ptr++;</td></tr>
-<tr><td class="num" id="LN260">260</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN261">261</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN262">262</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN263">263</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN264">264</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN265">265</td><td class="line">            *ptr++ = \
                cvGet2D(points, i, z).val[0];</td></tr>
-<tr><td class="num" id="LN266">266</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN267">267</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN268">268</td><td class="line">        \
                rPosition[columnIndex] = rPosition[columnIndex] + 1;</td></tr>
-<tr><td class="num" id="LN269">269</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN270">270</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN271">271</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
271, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"sd matrix creation over!"</span>;</td></tr>
-<tr><td class="num" id="LN272">272</td><td class="line">    \
                postProgress(50);</td></tr>
-<tr><td class="num" id="LN273">273</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN274">274</td><td class="line">    <span \
class='comment'>//-- This part of the code would involve the sd matrix and make the \
                mean and the std of the data -------------------</span></td></tr>
-<tr><td class="num" id="LN275">275</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN276">276</td><td class="line">    CvScalar std;</td></tr>
-<tr><td class="num" id="LN277">277</td><td class="line">    CvScalar mean;</td></tr>
-<tr><td class="num" id="LN278">278</td><td class="line">    <span \
                class="mrange">CvMat*   meanStore</span>    = 0;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a \
href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>'meanStore' \
initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path4" \
                title="Next event \
                (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN279">279</td><td class="line">    CvMat*   stdStore     = \
                0;</td></tr>
-<tr><td class="num" id="LN280">280</td><td class="line">    <span \
                class='keyword'>float</span>*   meanStorePtr = 0;</td></tr>
-<tr><td class="num" id="LN281">281</td><td class="line">    <span \
                class='keyword'>float</span>*   stdStorePtr  = 0;</td></tr>
-<tr><td class="num" id="LN282">282</td><td class="line">    <span \
class='keyword'>int</span>      totalcount   = 0; <span class='comment'>// Number of \
                non-empty clusters</span></td></tr>
-<tr><td class="num" id="LN283">283</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN284">284</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a \
href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path5" title="Next event \
                (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN285">285</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN286">286</td><td class="line">        meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN287">287</td><td class="line">        stdStore     = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN288">288</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN289">289</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN290">290</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN291">291</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN292">292</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; runningFlag() \
                &amp;&amp; (i &lt; sd-&gt;cols) ; i++)</td></tr>
-<tr><td class="num" id="LN293">293</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN294">294</td><td class="line">        <span \
class='keyword'>if</span> (runningFlag() &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
                &gt;= 1))</td></tr>
-<tr><td class="num" id="LN295">295</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN296">296</td><td class="line">            CvMat* \
workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN297">297</td><td class="line">            ptr              \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN298">298</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN299">299</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; rowPosition[(i / (points-&gt;cols))]) ; \
                j++)</td></tr>
-<tr><td class="num" id="LN300">300</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN301">301</td><td class="line">                *ptr++ = \
                cvGet2D(sd, j, i).val[0];</td></tr>
-<tr><td class="num" id="LN302">302</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN303">303</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN304">304</td><td class="line">            \
                cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr>
-<tr><td class="num" id="LN305">305</td><td class="line">            *meanStorePtr++ \
                = (<span class='keyword'>float</span>)mean.val[0];</td></tr>
-<tr><td class="num" id="LN306">306</td><td class="line">            *stdStorePtr++  \
                = (<span class='keyword'>float</span>)std.val[0];</td></tr>
-<tr><td class="num" id="LN307">307</td><td class="line">            \
                totalcount++;</td></tr>
-<tr><td class="num" id="LN308">308</td><td class="line">            \
                cvReleaseMat(&amp;workingArr);</td></tr>
-<tr><td class="num" id="LN309">309</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN310">310</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN311">311</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN312">312</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
312, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Make the mean and the std of the \
                data"</span>;</td></tr>
-<tr><td class="num" id="LN313">313</td><td class="line">    \
                postProgress(60);</td></tr>
-<tr><td class="num" id="LN314">314</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN315">315</td><td class="line">    <span class='comment'>// \
-----------------------------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN316">316</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN317">317</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a \
href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Taking true \
branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event \
                (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN318">318</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN319">319</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(<span \
                class="mrange">meanStore-&gt;data.ptr</span>);</td></tr>
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" \
style="margin-left:49ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a \
href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Dereference \
                of null pointer</td></tr></table></div></td></tr>
-<tr><td class="num" id="LN320">320</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN321">321</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN322">322</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN323">323</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN324">324</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN325">325</td><td class="line">        QString logFile = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN326">326</td><td class="line">        logFile         = \
                logFile.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN327">327</td><td class="line">        logFile         = \
                logFile.left(logFile.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN328">328</td><td class="line">        \
logFile.append(QLatin1String(<span \
                class='string_literal'>"logMeanStd.txt"</span>));</td></tr>
-<tr><td class="num" id="LN329">329</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN330">330</td><td class="line">        QFile \
                filems(logFile);</td></tr>
-<tr><td class="num" id="LN331">331</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN332">332</td><td class="line">        <span \
class='keyword'>if</span> (filems.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN333">333</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN334">334</td><td class="line">            QTextStream \
                oms(&amp;filems);</td></tr>
-<tr><td class="num" id="LN335">335</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"Mean Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN336">336</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN337">337</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN338">338</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN339">339</td><td class="line">                oms &lt;&lt; \
                *meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN340">340</td><td class="line">                oms &lt;&lt; \
                <span class='string_literal'>"\t"</span>;</td></tr>
-<tr><td class="num" id="LN341">341</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN342">342</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN343">343</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN344">344</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN345">345</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN346">346</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN347">347</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN348">348</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"\nStd Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN349">349</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN350">350</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN351">351</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN352">352</td><td class="line">                oms &lt;&lt; \
                *stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN353">353</td><td class="line">                oms &lt;&lt; \
                <span class='string_literal'>"\t"</span>;</td></tr>
-<tr><td class="num" id="LN354">354</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN355">355</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN356">356</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN357">357</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN358">358</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN359">359</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN360">360</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN361">361</td><td class="line">            \
                filems.close();</td></tr>
-<tr><td class="num" id="LN362">362</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN363">363</td><td class="line">            <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
363, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
                std"</span>;</td></tr>
-<tr><td class="num" id="LN364">364</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN365">365</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN366">366</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN367">367</td><td class="line">    \
                postProgress(70);</td></tr>
-<tr><td class="num" id="LN368">368</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN369">369</td><td class="line">    <span \
class='comment'>//-- Calculating weighted mean, and weighted std \
                -----------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN370">370</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN371">371</td><td class="line">    QTextStream \
                owms;</td></tr>
-<tr><td class="num" id="LN372">372</td><td class="line">    QFile       \
                filewms;</td></tr>
-<tr><td class="num" id="LN373">373</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN374">374</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN375">375</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN376">376</td><td class="line">        QString logFile2 = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN377">377</td><td class="line">        logFile2         = \
                logFile2.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN378">378</td><td class="line">        logFile2         = \
                logFile2.left(logFile2.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN379">379</td><td class="line">        \
logFile2.append(QLatin1String(<span \
                class='string_literal'>"logWeightedMeanStd.txt"</span>));</td></tr>
-<tr><td class="num" id="LN380">380</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN381">381</td><td class="line">        \
                filewms.setFileName(logFile2);</td></tr>
-<tr><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN383">383</td><td class="line">        <span \
class='keyword'>if</span> (filewms.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN384">384</td><td class="line">            \
                owms.setDevice(&amp;filewms);</td></tr>
-<tr><td class="num" id="LN385">385</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN386">386</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN387">387</td><td class="line">    QString info;</td></tr>
-<tr><td class="num" id="LN388">388</td><td class="line">    <span \
                class='keyword'>float</span>   weightedMean = 0.0f;</td></tr>
-<tr><td class="num" id="LN389">389</td><td class="line">    <span \
                class='keyword'>float</span>   weightedStd  = 0.0f;</td></tr>
-<tr><td class="num" id="LN390">390</td><td class="line">    <span \
                class='keyword'>float</span>   datasd[3]    = {0.0f, 0.0f, \
                0.0f};</td></tr>
-<tr><td class="num" id="LN391">391</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN392">392</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; points-&gt;cols) ; j++)</td></tr>
-<tr><td class="num" id="LN393">393</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN394">394</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN395">395</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN396">396</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN397">397</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> moveToChannel = 0 ; \
                moveToChannel &lt;= j ; moveToChannel++)</td></tr>
-<tr><td class="num" id="LN398">398</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN399">399</td><td class="line">            \
                meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN400">400</td><td class="line">            \
                stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN401">401</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN402">402</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN403">403</td><td class="line">        <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; d-&gt;clusterCount ; \
                i++)</td></tr>
-<tr><td class="num" id="LN404">404</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN405">405</td><td class="line">            <span \
                class='keyword'>if</span> (rowPosition[i] &gt;= 1)</td></tr>
-<tr><td class="num" id="LN406">406</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN407">407</td><td class="line">                weightedMean \
                += (*meanStorePtr) * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN408">408</td><td class="line">                weightedStd  \
                += (*stdStorePtr)  * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN409">409</td><td class="line">                meanStorePtr \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN410">410</td><td class="line">                stdStorePtr  \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN411">411</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN412">412</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN413">413</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN414">414</td><td class="line">        weightedMean = \
                weightedMean / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN415">415</td><td class="line">        weightedStd  = \
                weightedStd  / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN416">416</td><td class="line">        datasd[j]    = \
                weightedStd;</td></tr>
-<tr><td class="num" id="LN417">417</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN418">418</td><td class="line">        <span \
                class='keyword'>if</span> (!d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN419">419</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN420">420</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"\nChannel : "</span>)     &lt;&lt; j      \
                &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN421">421</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Mean : "</span>) &lt;&lt; \
                weightedMean &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN422">422</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Std  : "</span>) &lt;&lt; \
                weightedStd  &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN423">423</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN424">424</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN425">425</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN426">426</td><td class="line">        \
                info.append(QString::number(j));</td></tr>
-<tr><td class="num" id="LN427">427</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Mean: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN428">428</td><td class="line">        \
                info.append(QString::number(weightedMean));</td></tr>
-<tr><td class="num" id="LN429">429</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Standard \
                Deviation: "</span>));</td></tr>
-<tr><td class="num" id="LN430">430</td><td class="line">        \
                info.append(QString::number(weightedStd));</td></tr>
-<tr><td class="num" id="LN431">431</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN432">432</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN433">433</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN434">434</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN435">435</td><td class="line">        \
                filewms.close();</td></tr>
-<tr><td class="num" id="LN436">436</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN437">437</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN438">438</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
438, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr>
-<tr><td class="num" id="LN439">439</td><td class="line">    \
                postProgress(80);</td></tr>
-<tr><td class="num" id="LN440">440</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN441">441</td><td class="line">    <span class='comment'>// \
-- adaptation ---------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN442">442</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN443">443</td><td class="line">    <span \
class='keyword'>double</span> L = 1.2, LSoft = 0.9, Cr = 1.2, CrSoft = 0.9, Cb = 1.2, \
                CbSoft = 0.9;</td></tr>
-<tr><td class="num" id="LN444">444</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN445">445</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num" id="LN446">446</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN447">447</td><td class="line">        <span \
                class='comment'>// for 16 bits images only</span></td></tr>
-<tr><td class="num" id="LN448">448</td><td class="line">        <span \
                class='keyword'>if</span> (m_orgImage.sixteenBit())</td></tr>
-<tr><td class="num" id="LN449">449</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN450">450</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                points-&gt;cols ; i++)</td></tr>
-<tr><td class="num" id="LN451">451</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN452">452</td><td class="line">                datasd[i] = \
                datasd[i] / 256;</td></tr>
-<tr><td class="num" id="LN453">453</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN454">454</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN455">455</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN456">456</td><td class="line">        <span \
                class='keyword'>if</span> (datasd[0] &lt; 7)</td></tr>
-<tr><td class="num" id="LN457">457</td><td class="line">            L = datasd[0] - \
                0.98;</td></tr>
-<tr><td class="num" id="LN458">458</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 7 \
                &amp;&amp; datasd[0] &lt; 8)</td></tr>
-<tr><td class="num" id="LN459">459</td><td class="line">            L = datasd[0] - \
                1.2;</td></tr>
-<tr><td class="num" id="LN460">460</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 8 \
                &amp;&amp; datasd[0] &lt; 9)</td></tr>
-<tr><td class="num" id="LN461">461</td><td class="line">            L = datasd[0] - \
                1.5;</td></tr>
-<tr><td class="num" id="LN462">462</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN463">463</td><td class="line">            L = datasd[0] - \
                1.7;</td></tr>
-<tr><td class="num" id="LN464">464</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN465">465</td><td class="line">        <span \
                class='keyword'>if</span> (L &lt; 0)</td></tr>
-<tr><td class="num" id="LN466">466</td><td class="line">            L = 0;</td></tr>
-<tr><td class="num" id="LN467">467</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN468">468</td><td class="line">        <span \
                class='keyword'>if</span> (L &gt; 9)</td></tr>
-<tr><td class="num" id="LN469">469</td><td class="line">            L = 9;</td></tr>
-<tr><td class="num" id="LN470">470</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN471">471</td><td class="line">        Cr = datasd[2] * \
                0.8;</td></tr>
-<tr><td class="num" id="LN472">472</td><td class="line">        Cb = datasd[1] * \
                0.8;</td></tr>
-<tr><td class="num" id="LN473">473</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN474">474</td><td class="line">        <span \
                class='keyword'>if</span> (Cr &gt; 7)</td></tr>
-<tr><td class="num" id="LN475">475</td><td class="line">            Cr = \
                7;</td></tr>
-<tr><td class="num" id="LN476">476</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN477">477</td><td class="line">        <span \
                class='keyword'>if</span> (Cb &gt; 7)</td></tr>
-<tr><td class="num" id="LN478">478</td><td class="line">            Cb = \
                7;</td></tr>
-<tr><td class="num" id="LN479">479</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN480">480</td><td class="line">        L  = floorf(L  * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN481">481</td><td class="line">        Cb = floorf(Cb * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN482">482</td><td class="line">        Cr = floorf(Cr * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN483">483</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN484">484</td><td class="line">        <span \
                class='keyword'>if</span> ( L &gt; 9 )</td></tr>
-<tr><td class="num" id="LN485">485</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.8;</td></tr>
-<tr><td class="num" id="LN486">486</td><td class="line">        <span \
                class='keyword'>else</span> <span class='keyword'>if</span> ( L &gt; \
                3)</td></tr>
-<tr><td class="num" id="LN487">487</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.7;</td></tr>
-<tr><td class="num" id="LN488">488</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN489">489</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.6;</td></tr>
-<tr><td class="num" id="LN490">490</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN492">492</td><td class="line">    d-&gt;prm.thresholds[0] \
                = L;</td></tr>
-<tr><td class="num" id="LN493">493</td><td class="line">    d-&gt;prm.thresholds[1] \
                = Cb;</td></tr>
-<tr><td class="num" id="LN494">494</td><td class="line">    d-&gt;prm.thresholds[2] \
                = Cr;</td></tr>
-<tr><td class="num" id="LN495">495</td><td class="line">    d-&gt;prm.softness[0]   \
                = LSoft;</td></tr>
-<tr><td class="num" id="LN496">496</td><td class="line">    d-&gt;prm.softness[1]   \
                = CbSoft;</td></tr>
-<tr><td class="num" id="LN497">497</td><td class="line">    d-&gt;prm.softness[2]   \
                = CrSoft;</td></tr>
-<tr><td class="num" id="LN498">498</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN499">499</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
499, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"All is completed"</span>;</td></tr>
-<tr><td class="num" id="LN500">500</td><td class="line">    \
                postProgress(90);</td></tr>
-<tr><td class="num" id="LN501">501</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN502">502</td><td class="line">    <span \
class='comment'>//-- releasing matrices and closing files \
----------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN503">503</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN504">504</td><td class="line">    \
                cvReleaseMat(&amp;sd);</td></tr>
-<tr><td class="num" id="LN505">505</td><td class="line">    \
                cvReleaseMat(&amp;stdStore);</td></tr>
-<tr><td class="num" id="LN506">506</td><td class="line">    \
                cvReleaseMat(&amp;meanStore);</td></tr>
-<tr><td class="num" id="LN507">507</td><td class="line">    \
                cvReleaseMat(&amp;points);</td></tr>
-<tr><td class="num" id="LN508">508</td><td class="line">    \
                cvReleaseMat(&amp;clusters);</td></tr>
-<tr><td class="num" id="LN509">509</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN510">510</td><td class="line">    <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; 3 ; i++)</td></tr>
-<tr><td class="num" id="LN511">511</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN512">512</td><td class="line">        <span \
                class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr>
-<tr><td class="num" id="LN513">513</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN514">514</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN515">515</td><td class="line">    \
                postProgress(100);</td></tr>
-<tr><td class="num" id="LN516">516</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN517">517</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN518">518</td><td class="line">} <span class='comment'>// \
                namespace Digikam</span></td></tr>
-</table></body></html>
diff --git a/static/reports/clang/master/report-bb074e.html \
b/static/reports/clang/master/report-6db20c.html similarity index 100%
rename from static/reports/clang/master/report-bb074e.html
rename to static/reports/clang/master/report-6db20c.html
diff --git a/static/reports/clang/master/report-fd9664.html \
b/static/reports/clang/master/report-6f4e9d.html similarity index 100%
rename from static/reports/clang/master/report-fd9664.html
rename to static/reports/clang/master/report-6f4e9d.html
diff --git a/static/reports/clang/master/report-414ecb.html \
b/static/reports/clang/master/report-6f9b3a.html similarity index 100%
rename from static/reports/clang/master/report-414ecb.html
rename to static/reports/clang/master/report-6f9b3a.html
diff --git a/static/reports/clang/master/report-29cefc.html \
b/static/reports/clang/master/report-7259a4.html similarity index 100%
rename from static/reports/clang/master/report-29cefc.html
rename to static/reports/clang/master/report-7259a4.html
diff --git a/static/reports/clang/master/report-50e04b.html \
b/static/reports/clang/master/report-748462.html similarity index 80%
rename from static/reports/clang/master/report-50e04b.html
rename to static/reports/clang/master/report-748462.html
index 855c9ee2..f7e39da1 100644
--- a/static/reports/clang/master/report-50e04b.html
+++ b/static/reports/clang/master/report-748462.html
@@ -68,18 +68,18 @@
 
 <!-- ISSUEHASHCONTENTOFLINEINCONTEXT 43f29b1a32e5b1a1a0805da31e4f6bcf -->
 
-<!-- BUGLINE 452 -->
+<!-- BUGLINE 446 -->
 
 <!-- BUGCOLUMN 39 -->
 
-<!-- BUGPATHLENGTH 11 -->
+<!-- BUGPATHLENGTH 9 -->
 
 <!-- BUGMETAEND -->
 <!-- REPORTHEADER -->
 <h3>Bug Summary</h3>
 <table class="simpletable">
 <tr><td class="rowname">File:</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td></tr>
                
-<tr><td class="rowname">Location:</td><td><a href="#EndPath">line 452, column \
39</a></td></tr> +<tr><td class="rowname">Location:</td><td><a href="#EndPath">line \
446, column 39</a></td></tr>  <tr><td class="rowname">Description:</td><td>The left \
operand of '/' is a garbage value</td></tr>  </table>
 <!-- REPORTSUMMARYEXTRA -->
@@ -146,7 +146,7 @@
 <tr><td class="num" id="LN59">59</td><td class="line">      : \
clusterCount(30),</td></tr>  <tr><td class="num" id="LN60">60</td><td class="line">   \
size(512)</td></tr>  <tr><td class="num" id="LN61">61</td><td class="line">    \
                {</td></tr>
-<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
c++)</td></tr> +<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
++c)</td></tr>  <tr><td class="num" id="LN63">63</td><td class="line">        \
{</td></tr>  <tr><td class="num" id="LN64">64</td><td class="line">            \
fimg[c] = 0;</td></tr>  <tr><td class="num" id="LN65">65</td><td class="line">        \
}</td></tr> @@ -186,16 +186,16 @@
 <tr><td class="num" id="LN99">99</td><td class="line">{</td></tr>
 <tr><td class="num" id="LN100">100</td><td class="line">    DColor col;</td></tr>
 <tr><td class="num" id="LN101">101</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN102">102</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; runningFlag() \
&amp;&amp; (c &lt; 3) ; c++)</td></tr> +<tr><td class="num" id="LN102">102</td><td \
class="line">    <span class='keyword'>for</span> (<span class='keyword'>int</span> c \
= 0 ; runningFlag() &amp;&amp; (c &lt; 3) ; ++c)</td></tr>  <tr><td class="num" \
id="LN103">103</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN104">104</td><td class="line">        d-&gt;fimg[c] = <span \
class='keyword'>new</span> <span \
class='keyword'>float</span>[m_orgImage.numPixels()];</td></tr>  <tr><td class="num" \
id="LN105">105</td><td class="line">    }</td></tr>  <tr><td class="num" \
id="LN106">106</td><td class="line"> </td></tr>  <tr><td class="num" \
id="LN107">107</td><td class="line">    <span class='keyword'>int</span> j = \
0;</td></tr>  <tr><td class="num" id="LN108">108</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN109">109</td><td class="line">    <span \
class='keyword'>for</span> (uint y = 0 ; runningFlag() &amp;&amp; (y &lt; \
m_orgImage.height()) ; y++)</td></tr> +<tr><td class="num" id="LN109">109</td><td \
class="line">    <span class='keyword'>for</span> (uint y = 0 ; runningFlag() \
&amp;&amp; (y &lt; m_orgImage.height()) ; ++y)</td></tr>  <tr><td class="num" \
                id="LN110">110</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN111">111</td><td class="line">        <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
m_orgImage.width()) ; x++)</td></tr> +<tr><td class="num" id="LN111">111</td><td \
class="line">        <span class='keyword'>for</span> (uint x = 0 ; runningFlag() \
&amp;&amp; (x &lt; m_orgImage.width()) ; ++x)</td></tr>  <tr><td class="num" \
id="LN112">112</td><td class="line">        {</td></tr>  <tr><td class="num" \
id="LN113">113</td><td class="line">            col           = \
m_orgImage.getPixelColor(x, y);</td></tr>  <tr><td class="num" id="LN114">114</td><td \
class="line">            d-&gt;fimg[0][j] = col.red();</td></tr> @@ -230,9 +230,9 @@
 <tr><td class="num" id="LN143">143</td><td class="line">    <span class='comment'>// \
pointer variable to handle the CvMat* points (the image in CvMat \
format)</span></td></tr>  <tr><td class="num" id="LN144">144</td><td class="line">    \
<span class='keyword'>float</span>* pointsPtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(points-&gt;data.ptr);</td></tr>  <tr><td \
                class="num" id="LN145">145</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN146">146</td><td class="line">    <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
m_orgImage.numPixels()) ; x++)</td></tr> +<tr><td class="num" id="LN146">146</td><td \
class="line">    <span class='keyword'>for</span> (uint x = 0 ; runningFlag() \
&amp;&amp; (x &lt; m_orgImage.numPixels()) ; ++x)</td></tr>  <tr><td class="num" \
                id="LN147">147</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN148">148</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> y = 0 ; runningFlag() \
&amp;&amp; (y &lt; 3) ; y++)</td></tr> +<tr><td class="num" id="LN148">148</td><td \
class="line">        <span class='keyword'>for</span> (<span \
class='keyword'>int</span> y = 0 ; runningFlag() &amp;&amp; (y &lt; 3) ; \
++y)</td></tr>  <tr><td class="num" id="LN149">149</td><td class="line">        \
{</td></tr>  <tr><td class="num" id="LN150">150</td><td class="line">            \
*pointsPtr++ = (<span class='keyword'>float</span>)d-&gt;fimg[y][x];</td></tr>  \
<tr><td class="num" id="LN151">151</td><td class="line">        }</td></tr> @@ -262,7 \
+262,7 @@  <tr><td class="num" id="LN174">174</td><td class="line"> </td></tr>
 <tr><td class="num" id="LN175">175</td><td class="line">    <span \
class='comment'>//the row position array would just make the hold the number of \
elements in each cluster</span></td></tr>  <tr><td class="num" id="LN176">176</td><td \
                class="line"> </td></tr>
-<tr><td class="num" id="LN177">177</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
d-&gt;clusterCount) ; i++)</td></tr> +<tr><td class="num" id="LN177">177</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 0 ; runningFlag() \
&amp;&amp; (i &lt; d-&gt;clusterCount) ; ++i)</td></tr>  <tr><td class="num" \
id="LN178">178</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN179">179</td><td class="line">        <span class='comment'>//initializing the \
cluster count array</span></td></tr>  <tr><td class="num" id="LN180">180</td><td \
class="line">        rowPosition[i] = 0;</td></tr> @@ -270,7 +270,7 @@
 <tr><td class="num" id="LN182">182</td><td class="line"> </td></tr>
 <tr><td class="num" id="LN183">183</td><td class="line">    <span \
class='keyword'>int</span> rowIndex, columnIndex;</td></tr>  <tr><td class="num" \
                id="LN184">184</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN185">185</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
m_orgImage.numPixels()) ; i++)</td></tr> +<tr><td class="num" id="LN185">185</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 0 ; runningFlag() \
&amp;&amp; (i &lt; m_orgImage.numPixels()) ; ++i)</td></tr>  <tr><td class="num" \
id="LN186">186</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN187">187</td><td class="line">        columnIndex = \
clusters-&gt;data.i[i];</td></tr>  <tr><td class="num" id="LN188">188</td><td \
class="line">        rowPosition[columnIndex]++;</td></tr> @@ -292,7 +292,7 @@
 <tr><td class="num" id="LN204">204</td><td class="line"> </td></tr>
 <tr><td class="num" id="LN205">205</td><td class="line">    <span \
class='keyword'>int</span> max = rowPosition[0];</td></tr>  <tr><td class="num" \
                id="LN206">206</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN207">207</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 1 ; runningFlag() &amp;&amp; (i &lt; \
d-&gt;clusterCount) ; i++)</td></tr> +<tr><td class="num" id="LN207">207</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 1 ; runningFlag() \
&amp;&amp; (i &lt; d-&gt;clusterCount) ; ++i)</td></tr>  <tr><td class="num" \
id="LN208">208</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN209">209</td><td class="line">        <span class='keyword'>if</span> \
(rowPosition[i] &gt; max)</td></tr>  <tr><td class="num" id="LN210">210</td><td \
class="line">        {</td></tr> @@ -322,7 +322,7 @@
 <tr><td class="num" id="LN233">233</td><td class="line"> </td></tr>
 <tr><td class="num" id="LN234">234</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rPosition(<span \
class='keyword'>new</span> <span \
class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>  <tr><td class="num" \
                id="LN235">235</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN236">236</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
d-&gt;clusterCount) ; i++)</td></tr> +<tr><td class="num" id="LN236">236</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 0 ; runningFlag() \
&amp;&amp; (i &lt; d-&gt;clusterCount) ; ++i)</td></tr>  <tr><td class="num" \
id="LN237">237</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN238">238</td><td class="line">        rPosition[i] = 0;</td></tr>  <tr><td \
class="num" id="LN239">239</td><td class="line">    }</td></tr> @@ -332,7 +332,7 @@
 <tr><td class="num" id="LN243">243</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
243, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"The rowPosition array is ready!"</span>;</td></tr>  <tr><td \
class="num" id="LN244">244</td><td class="line">    postProgress(40);</td></tr>  \
                <tr><td class="num" id="LN245">245</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN246">246</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; runningFlag() &amp;&amp; (i &lt; \
m_orgImage.numPixels()) ; i++)</td></tr> +<tr><td class="num" id="LN246">246</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 0 ; runningFlag() \
&amp;&amp; (i &lt; m_orgImage.numPixels()) ; ++i)</td></tr>  <tr><td class="num" \
id="LN247">247</td><td class="line">    {</td></tr>  <tr><td class="num" \
id="LN248">248</td><td class="line">        columnIndex = \
clusters-&gt;data.i[i];</td></tr>  <tr><td class="num" id="LN249">249</td><td \
class="line">        rowIndex    = rPosition[columnIndex];</td></tr> @@ -341,15 \
+341,15 @@  <tr><td class="num" id="LN252">252</td><td class="line">        ptr       \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(sd-&gt;data.ptr + \
rowIndex*(sd-&gt;step));</td></tr>  <tr><td class="num" id="LN253">253</td><td \
class="line"> </td></tr>  <tr><td class="num" id="LN254">254</td><td class="line">    \
                <span class='comment'>//moving to the right column</span></td></tr>
-<tr><td class="num" id="LN255">255</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
&amp;&amp; (j &lt; columnIndex) ; j++)</td></tr> +<tr><td class="num" \
id="LN255">255</td><td class="line">        <span class='keyword'>for</span> (<span \
class='keyword'>int</span> j = 0 ; runningFlag() &amp;&amp; (j &lt; columnIndex) ; \
++j)</td></tr>  <tr><td class="num" id="LN256">256</td><td class="line">        \
                {</td></tr>
-<tr><td class="num" id="LN257">257</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
&amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr> +<tr><td class="num" \
id="LN257">257</td><td class="line">            <span class='keyword'>for</span> \
(<span class='keyword'>int</span> z = 0 ; runningFlag() &amp;&amp; (z &lt; \
(points-&gt;cols)) ; ++z)</td></tr>  <tr><td class="num" id="LN258">258</td><td \
class="line">            {</td></tr>  <tr><td class="num" id="LN259">259</td><td \
class="line">                ptr++;</td></tr>  <tr><td class="num" \
id="LN260">260</td><td class="line">            }</td></tr>  <tr><td class="num" \
id="LN261">261</td><td class="line">        }</td></tr>  <tr><td class="num" \
                id="LN262">262</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN263">263</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
&amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr> +<tr><td class="num" \
id="LN263">263</td><td class="line">        <span class='keyword'>for</span> (<span \
class='keyword'>int</span> z = 0 ; runningFlag() &amp;&amp; (z &lt; \
(points-&gt;cols)) ; ++z)</td></tr>  <tr><td class="num" id="LN264">264</td><td \
class="line">        {</td></tr>  <tr><td class="num" id="LN265">265</td><td \
class="line">            *ptr++ = cvGet2D(points, i, z).val[0];</td></tr>  <tr><td \
class="num" id="LN266">266</td><td class="line">        }</td></tr> @@ -370,248 \
+370,240 @@  <tr><td class="num" id="LN281">281</td><td class="line">    <span \
class='keyword'>float</span>*   stdStorePtr  = 0;</td></tr>  <tr><td class="num" \
id="LN282">282</td><td class="line">    <span class='keyword'>int</span>      \
totalcount   = 0; <span class='comment'>// Number of non-empty \
clusters</span></td></tr>  <tr><td class="num" id="LN283">283</td><td class="line"> \
                </td></tr>
-<tr><td class="num" id="LN284">284</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a \
href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path4" title="Next event \
                (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN285">285</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN286">286</td><td class="line">        meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN287">287</td><td class="line">        stdStore     = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN288">288</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN289">289</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN290">290</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN291">291</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN292">292</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; runningFlag() \
                &amp;&amp; (i &lt; sd-&gt;cols) ; i++)</td></tr>
-<tr><td class="num" id="LN293">293</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN294">294</td><td class="line">        <span \
class='keyword'>if</span> (runningFlag() &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
                &gt;= 1))</td></tr>
-<tr><td class="num" id="LN295">295</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN296">296</td><td class="line">            CvMat* \
workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN297">297</td><td class="line">            ptr              \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN298">298</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN299">299</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; rowPosition[(i / (points-&gt;cols))]) ; \
                j++)</td></tr>
-<tr><td class="num" id="LN300">300</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN301">301</td><td class="line">                *ptr++ = \
                cvGet2D(sd, j, i).val[0];</td></tr>
-<tr><td class="num" id="LN302">302</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN303">303</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN304">304</td><td class="line">            \
                cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr>
-<tr><td class="num" id="LN305">305</td><td class="line">            *meanStorePtr++ \
                = (<span class='keyword'>float</span>)mean.val[0];</td></tr>
-<tr><td class="num" id="LN306">306</td><td class="line">            *stdStorePtr++  \
                = (<span class='keyword'>float</span>)std.val[0];</td></tr>
-<tr><td class="num" id="LN307">307</td><td class="line">            \
                totalcount++;</td></tr>
-<tr><td class="num" id="LN308">308</td><td class="line">            \
                cvReleaseMat(&amp;workingArr);</td></tr>
-<tr><td class="num" id="LN309">309</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN310">310</td><td class="line">    }</td></tr>
+<tr><td class="num" id="LN284">284</td><td class="line">    meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
3))</span></span>);</td></tr> +<tr><td class="num" id="LN285">285</td><td \
class="line">    stdStore     = cvCreateMat(d-&gt;clusterCount, points-&gt;cols, \
<span class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) \
+ (((1)-1) &lt;&lt; 3))</span></span>);</td></tr> +<tr><td class="num" \
id="LN286">286</td><td class="line">    meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN287">287</td><td class="line">    stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN288">288</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN289">289</td><td class="line">    <span class='keyword'>for</span> (<span \
class='keyword'>int</span> i = 0 ; runningFlag() &amp;&amp; (i &lt; sd-&gt;cols) ; \
++i)</td></tr> +<tr><td class="num" id="LN290">290</td><td class="line">    \
{</td></tr> +<tr><td class="num" id="LN291">291</td><td class="line">        <span \
class='keyword'>if</span> (runningFlag() &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
&gt;= 1))</td></tr> +<tr><td class="num" id="LN292">292</td><td class="line">        \
{</td></tr> +<tr><td class="num" id="LN293">293</td><td class="line">            \
CvMat* workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
(((1)-1) &lt;&lt; 3))</span></span>);</td></tr> +<tr><td class="num" \
id="LN294">294</td><td class="line">            ptr               = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN295">295</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN296">296</td><td class="line">            <span class='keyword'>for</span> \
(<span class='keyword'>int</span> j = 0 ; runningFlag() &amp;&amp; (j &lt; \
rowPosition[(i / (points-&gt;cols))]) ; ++j)</td></tr> +<tr><td class="num" \
id="LN297">297</td><td class="line">            {</td></tr> +<tr><td class="num" \
id="LN298">298</td><td class="line">                *ptr++ = cvGet2D(sd, j, \
i).val[0];</td></tr> +<tr><td class="num" id="LN299">299</td><td class="line">        \
}</td></tr> +<tr><td class="num" id="LN300">300</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN301">301</td><td class="line">            \
cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr> +<tr><td class="num" \
id="LN302">302</td><td class="line">            *meanStorePtr++ = (<span \
class='keyword'>float</span>)mean.val[0];</td></tr> +<tr><td class="num" \
id="LN303">303</td><td class="line">            *stdStorePtr++  = (<span \
class='keyword'>float</span>)std.val[0];</td></tr> +<tr><td class="num" \
id="LN304">304</td><td class="line">            totalcount++;</td></tr> +<tr><td \
class="num" id="LN305">305</td><td class="line">            \
cvReleaseMat(&amp;workingArr);</td></tr> +<tr><td class="num" id="LN306">306</td><td \
class="line">        }</td></tr> +<tr><td class="num" id="LN307">307</td><td \
class="line">    }</td></tr> +<tr><td class="num" id="LN308">308</td><td \
class="line"> </td></tr> +<tr><td class="num" id="LN309">309</td><td class="line">    \
<span class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
309, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Make the mean and the std of the data"</span>;</td></tr> \
+<tr><td class="num" id="LN310">310</td><td class="line">    \
postProgress(60);</td></tr>  <tr><td class="num" id="LN311">311</td><td class="line"> \
                </td></tr>
-<tr><td class="num" id="LN312">312</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
312, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Make the mean and the std of the \
                data"</span>;</td></tr>
-<tr><td class="num" id="LN313">313</td><td class="line">    \
                postProgress(60);</td></tr>
-<tr><td class="num" id="LN314">314</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN315">315</td><td class="line">    <span class='comment'>// \
-----------------------------------------------------------------------------------------------------------------</span></td></tr>
 +<tr><td class="num" id="LN312">312</td><td class="line">    <span \
class='comment'>// -----------------------------------------------------------------------------------------------------------------</span></td></tr>
 +<tr><td class="num" id="LN313">313</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN314">314</td><td class="line">    meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN315">315</td><td class="line">    stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>  <tr><td \
                class="num" id="LN316">316</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN317">317</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a \
href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path5" title="Next event \
(5)">&#x2192;</a></div></td></tr></table></div></td></tr> +<tr><td class="num" \
id="LN317">317</td><td class="line">    <span class='keyword'>if</span> \
(runningFlag() &amp;&amp; !d-&gt;path.isEmpty())</td></tr>  <tr><td class="num" \
                id="LN318">318</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN319">319</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN320">320</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN321">321</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN322">322</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN323">323</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN324">324</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN325">325</td><td class="line">        QString logFile = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN326">326</td><td class="line">        logFile         = \
                logFile.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN327">327</td><td class="line">        logFile         = \
                logFile.left(logFile.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN328">328</td><td class="line">        \
logFile.append(QLatin1String(<span \
                class='string_literal'>"logMeanStd.txt"</span>));</td></tr>
-<tr><td class="num" id="LN329">329</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN330">330</td><td class="line">        QFile \
                filems(logFile);</td></tr>
-<tr><td class="num" id="LN331">331</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN332">332</td><td class="line">        <span \
class='keyword'>if</span> (filems.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN333">333</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN334">334</td><td class="line">            QTextStream \
                oms(&amp;filems);</td></tr>
-<tr><td class="num" id="LN335">335</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"Mean Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN336">336</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN337">337</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN338">338</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN339">339</td><td class="line">                oms &lt;&lt; \
                *meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN340">340</td><td class="line">                oms &lt;&lt; \
<span class='string_literal'>"\t"</span>;</td></tr> +<tr><td class="num" \
id="LN319">319</td><td class="line">        QString logFile = d-&gt;path;</td></tr> \
+<tr><td class="num" id="LN320">320</td><td class="line">        logFile         = \
logFile.section(QLatin1Char('/'), -1);</td></tr> +<tr><td class="num" \
id="LN321">321</td><td class="line">        logFile         = \
logFile.left(logFile.indexOf(QLatin1Char('.')));</td></tr> +<tr><td class="num" \
id="LN322">322</td><td class="line">        logFile.append(QLatin1String(<span \
class='string_literal'>"logMeanStd.txt"</span>));</td></tr> +<tr><td class="num" \
id="LN323">323</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN324">324</td><td class="line">        QFile filems(logFile);</td></tr> +<tr><td \
class="num" id="LN325">325</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN326">326</td><td class="line">        <span class='keyword'>if</span> \
(filems.open(QIODevice::WriteOnly | QIODevice::Text))</td></tr> +<tr><td class="num" \
id="LN327">327</td><td class="line">        {</td></tr> +<tr><td class="num" \
id="LN328">328</td><td class="line">            QTextStream \
oms(&amp;filems);</td></tr> +<tr><td class="num" id="LN329">329</td><td class="line"> \
oms &lt;&lt; <span class='string_literal'>"Mean Data\n"</span>;</td></tr> +<tr><td \
class="num" id="LN330">330</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN331">331</td><td class="line">            <span class='keyword'>for</span> \
(<span class='keyword'>int</span> i = 0 ; i &lt; totalcount ; ++i)</td></tr> +<tr><td \
class="num" id="LN332">332</td><td class="line">            {</td></tr> +<tr><td \
class="num" id="LN333">333</td><td class="line">                oms &lt;&lt; \
*meanStorePtr++;</td></tr> +<tr><td class="num" id="LN334">334</td><td class="line">  \
oms &lt;&lt; <span class='string_literal'>"\t"</span>;</td></tr> +<tr><td class="num" \
id="LN335">335</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN336">336</td><td class="line">                <span class='keyword'>if</span> \
((i+1)%3 == 0)</td></tr> +<tr><td class="num" id="LN337">337</td><td class="line">    \
{</td></tr> +<tr><td class="num" id="LN338">338</td><td class="line">                 \
oms &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr> +<tr><td class="num" \
id="LN339">339</td><td class="line">                }</td></tr> +<tr><td class="num" \
id="LN340">340</td><td class="line">            }</td></tr>  <tr><td class="num" \
                id="LN341">341</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN342">342</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN343">343</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN344">344</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN345">345</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN346">346</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN347">347</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN348">348</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"\nStd Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN349">349</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN350">350</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN351">351</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN352">352</td><td class="line">                oms &lt;&lt; \
                *stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN353">353</td><td class="line">                oms &lt;&lt; \
<span class='string_literal'>"\t"</span>;</td></tr> +<tr><td class="num" \
id="LN342">342</td><td class="line">            oms &lt;&lt; <span \
class='string_literal'>"\nStd Data\n"</span>;</td></tr> +<tr><td class="num" \
id="LN343">343</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN344">344</td><td class="line">            <span class='keyword'>for</span> \
(<span class='keyword'>int</span> i = 0 ; i &lt; totalcount ; ++i)</td></tr> +<tr><td \
class="num" id="LN345">345</td><td class="line">            {</td></tr> +<tr><td \
class="num" id="LN346">346</td><td class="line">                oms &lt;&lt; \
*stdStorePtr++;</td></tr> +<tr><td class="num" id="LN347">347</td><td class="line">   \
oms &lt;&lt; <span class='string_literal'>"\t"</span>;</td></tr> +<tr><td class="num" \
id="LN348">348</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN349">349</td><td class="line">                <span class='keyword'>if</span> \
((i+1)%3 == 0)</td></tr> +<tr><td class="num" id="LN350">350</td><td class="line">    \
{</td></tr> +<tr><td class="num" id="LN351">351</td><td class="line">                 \
oms &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr> +<tr><td class="num" \
id="LN352">352</td><td class="line">                }</td></tr> +<tr><td class="num" \
id="LN353">353</td><td class="line">            }</td></tr>  <tr><td class="num" \
                id="LN354">354</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN355">355</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN356">356</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN357">357</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN358">358</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN359">359</td><td class="line">            }</td></tr>
+<tr><td class="num" id="LN355">355</td><td class="line">            \
filems.close();</td></tr> +<tr><td class="num" id="LN356">356</td><td class="line"> \
</td></tr> +<tr><td class="num" id="LN357">357</td><td class="line">            <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
357, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
std"</span>;</td></tr> +<tr><td class="num" id="LN358">358</td><td class="line">      \
}</td></tr> +<tr><td class="num" id="LN359">359</td><td class="line">    }</td></tr>
 <tr><td class="num" id="LN360">360</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN361">361</td><td class="line">            \
filems.close();</td></tr> +<tr><td class="num" id="LN361">361</td><td class="line">   \
postProgress(70);</td></tr>  <tr><td class="num" id="LN362">362</td><td class="line"> \
                </td></tr>
-<tr><td class="num" id="LN363">363</td><td class="line">            <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
363, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
                std"</span>;</td></tr>
-<tr><td class="num" id="LN364">364</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN365">365</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN366">366</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN367">367</td><td class="line">    \
                postProgress(70);</td></tr>
-<tr><td class="num" id="LN368">368</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN369">369</td><td class="line">    <span \
class='comment'>//-- Calculating weighted mean, and weighted std \
                -----------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN370">370</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN371">371</td><td class="line">    QTextStream \
                owms;</td></tr>
-<tr><td class="num" id="LN372">372</td><td class="line">    QFile       \
                filewms;</td></tr>
-<tr><td class="num" id="LN373">373</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN374">374</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN375">375</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN376">376</td><td class="line">        QString logFile2 = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN377">377</td><td class="line">        logFile2         = \
                logFile2.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN378">378</td><td class="line">        logFile2         = \
                logFile2.left(logFile2.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN379">379</td><td class="line">        \
logFile2.append(QLatin1String(<span \
class='string_literal'>"logWeightedMeanStd.txt"</span>));</td></tr> +<tr><td \
class="num" id="LN363">363</td><td class="line">    <span class='comment'>//-- \
Calculating weighted mean, and weighted std \
-----------------------------------------------------------</span></td></tr> +<tr><td \
class="num" id="LN364">364</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN365">365</td><td class="line">    QTextStream owms;</td></tr> +<tr><td \
class="num" id="LN366">366</td><td class="line">    QFile       filewms;</td></tr> \
+<tr><td class="num" id="LN367">367</td><td class="line"> </td></tr> +<tr><td \
class="num" id="LN368">368</td><td class="line">    <span class='keyword'>if</span> \
(runningFlag() &amp;&amp; !d-&gt;path.isEmpty())</td></tr> +<tr><td class="num" \
id="LN369">369</td><td class="line">    {</td></tr> +<tr><td class="num" \
id="LN370">370</td><td class="line">        QString logFile2 = d-&gt;path;</td></tr> \
+<tr><td class="num" id="LN371">371</td><td class="line">        logFile2         = \
logFile2.section(QLatin1Char('/'), -1);</td></tr> +<tr><td class="num" \
id="LN372">372</td><td class="line">        logFile2         = \
logFile2.left(logFile2.indexOf(QLatin1Char('.')));</td></tr> +<tr><td class="num" \
id="LN373">373</td><td class="line">        logFile2.append(QLatin1String(<span \
class='string_literal'>"logWeightedMeanStd.txt"</span>));</td></tr> +<tr><td \
class="num" id="LN374">374</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN375">375</td><td class="line">        filewms.setFileName(logFile2);</td></tr> \
+<tr><td class="num" id="LN376">376</td><td class="line"> </td></tr> +<tr><td \
class="num" id="LN377">377</td><td class="line">        <span \
class='keyword'>if</span> (filewms.open(QIODevice::WriteOnly | \
QIODevice::Text))</td></tr> +<tr><td class="num" id="LN378">378</td><td class="line"> \
owms.setDevice(&amp;filewms);</td></tr> +<tr><td class="num" id="LN379">379</td><td \
class="line">    }</td></tr>  <tr><td class="num" id="LN380">380</td><td \
                class="line"> </td></tr>
-<tr><td class="num" id="LN381">381</td><td class="line">        \
                filewms.setFileName(logFile2);</td></tr>
-<tr><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN383">383</td><td class="line">        <span \
class='keyword'>if</span> (filewms.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN384">384</td><td class="line">            \
                owms.setDevice(&amp;filewms);</td></tr>
-<tr><td class="num" id="LN385">385</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN386">386</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN387">387</td><td class="line">    QString info;</td></tr>
-<tr><td class="num" id="LN388">388</td><td class="line">    <span \
                class='keyword'>float</span>   weightedMean = 0.0f;</td></tr>
-<tr><td class="num" id="LN389">389</td><td class="line">    <span \
                class='keyword'>float</span>   weightedStd  = 0.0f;</td></tr>
-<tr><td class="num" id="LN390">390</td><td class="line">    <span \
                class='keyword'>float</span>   datasd[3]    = {0.0f, 0.0f, \
                0.0f};</td></tr>
-<tr><td class="num" id="LN391">391</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN392">392</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; points-&gt;cols) ; j++)</td></tr>
-<tr><td class="num" id="LN393">393</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN394">394</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN395">395</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN381">381</td><td class="line">    QString info;</td></tr> +<tr><td \
class="num" id="LN382">382</td><td class="line">    <span \
class='keyword'>float</span>   weightedMean = 0.0f;</td></tr> +<tr><td class="num" \
id="LN383">383</td><td class="line">    <span class='keyword'>float</span>   \
weightedStd  = 0.0f;</td></tr> +<tr><td class="num" id="LN384">384</td><td \
class="line">    <span class='keyword'>float</span>   datasd[3]    = {0.0f, 0.0f, \
0.0f};</td></tr> +<tr><td class="num" id="LN385">385</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN386">386</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
&amp;&amp; (j &lt; points-&gt;cols) ; ++j)</td></tr> +<tr><td class="num" \
id="LN387">387</td><td class="line">    {</td></tr> +<tr><td class="num" \
id="LN388">388</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN389">389</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr> +<tr><td \
class="num" id="LN390">390</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN391">391</td><td class="line">        <span class='keyword'>for</span> (<span \
class='keyword'>int</span> moveToChannel = 0 ; moveToChannel &lt;= j ; \
++moveToChannel)</td></tr> +<tr><td class="num" id="LN392">392</td><td class="line">  \
{</td></tr> +<tr><td class="num" id="LN393">393</td><td class="line">            \
meanStorePtr++;</td></tr> +<tr><td class="num" id="LN394">394</td><td class="line">   \
stdStorePtr++;</td></tr> +<tr><td class="num" id="LN395">395</td><td class="line">    \
}</td></tr>  <tr><td class="num" id="LN396">396</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN397">397</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> moveToChannel = 0 ; \
moveToChannel &lt;= j ; moveToChannel++)</td></tr> +<tr><td class="num" \
id="LN397">397</td><td class="line">        <span class='keyword'>for</span> (uint i \
= 0 ; i &lt; d-&gt;clusterCount ; ++i)</td></tr>  <tr><td class="num" \
                id="LN398">398</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN399">399</td><td class="line">            \
                meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN400">400</td><td class="line">            \
                stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN401">401</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN402">402</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN403">403</td><td class="line">        <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; d-&gt;clusterCount ; \
                i++)</td></tr>
-<tr><td class="num" id="LN404">404</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN405">405</td><td class="line">            <span \
                class='keyword'>if</span> (rowPosition[i] &gt;= 1)</td></tr>
-<tr><td class="num" id="LN406">406</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN407">407</td><td class="line">                weightedMean \
                += (*meanStorePtr) * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN408">408</td><td class="line">                weightedStd  \
                += (*stdStorePtr)  * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN409">409</td><td class="line">                meanStorePtr \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN410">410</td><td class="line">                stdStorePtr  \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN411">411</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN412">412</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN413">413</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN414">414</td><td class="line">        weightedMean = \
                weightedMean / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN415">415</td><td class="line">        weightedStd  = \
                weightedStd  / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN416">416</td><td class="line">        datasd[j]    = \
                weightedStd;</td></tr>
-<tr><td class="num" id="LN417">417</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN418">418</td><td class="line">        <span \
                class='keyword'>if</span> (!d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN419">419</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN420">420</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"\nChannel : "</span>)     &lt;&lt; j      \
                &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN421">421</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Mean : "</span>) &lt;&lt; \
                weightedMean &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN422">422</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Std  : "</span>) &lt;&lt; \
                weightedStd  &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN423">423</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN424">424</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN425">425</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN426">426</td><td class="line">        \
                info.append(QString::number(j));</td></tr>
-<tr><td class="num" id="LN427">427</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Mean: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN428">428</td><td class="line">        \
                info.append(QString::number(weightedMean));</td></tr>
-<tr><td class="num" id="LN429">429</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Standard \
                Deviation: "</span>));</td></tr>
-<tr><td class="num" id="LN430">430</td><td class="line">        \
                info.append(QString::number(weightedStd));</td></tr>
-<tr><td class="num" id="LN431">431</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN432">432</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN433">433</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN434">434</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN435">435</td><td class="line">        \
                filewms.close();</td></tr>
-<tr><td class="num" id="LN436">436</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN437">437</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN438">438</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
438, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr>
-<tr><td class="num" id="LN439">439</td><td class="line">    \
                postProgress(80);</td></tr>
-<tr><td class="num" id="LN440">440</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN441">441</td><td class="line">    <span class='comment'>// \
-- adaptation ---------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN442">442</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN443">443</td><td class="line">    <span \
class='keyword'>double</span> L = 1.2, LSoft = 0.9, Cr = 1.2, CrSoft = 0.9, Cb = 1.2, \
                CbSoft = 0.9;</td></tr>
-<tr><td class="num" id="LN444">444</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN445">445</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a \
href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Taking true \
branch</td><td><div class="PathNav"><a href="#Path6" title="Next event \
                (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN446">446</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN447">447</td><td class="line">        <span \
                class='comment'>// for 16 bits images only</span></td></tr>
-<tr><td class="num" id="LN448">448</td><td class="line">        <span \
                class='keyword'>if</span> (m_orgImage.sixteenBit())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" \
style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a \
href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking true \
branch</td><td><div class="PathNav"><a href="#Path7" title="Next event \
                (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN449">449</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN450">450</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
points-&gt;cols ; i++)</td></tr> +<tr><td class="num" id="LN399">399</td><td \
class="line">            <span class='keyword'>if</span> (rowPosition[i] &gt;= \
1)</td></tr> +<tr><td class="num" id="LN400">400</td><td class="line">            \
{</td></tr> +<tr><td class="num" id="LN401">401</td><td class="line">                \
weightedMean += (*meanStorePtr) * rowPosition[i];</td></tr> +<tr><td class="num" \
id="LN402">402</td><td class="line">                weightedStd  += (*stdStorePtr)  * \
rowPosition[i];</td></tr> +<tr><td class="num" id="LN403">403</td><td class="line">   \
meanStorePtr += points-&gt;cols;</td></tr> +<tr><td class="num" \
id="LN404">404</td><td class="line">                stdStorePtr  += \
points-&gt;cols;</td></tr> +<tr><td class="num" id="LN405">405</td><td class="line">  \
}</td></tr> +<tr><td class="num" id="LN406">406</td><td class="line">        \
}</td></tr> +<tr><td class="num" id="LN407">407</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN408">408</td><td class="line">        weightedMean = \
weightedMean / (m_orgImage.numPixels());</td></tr> +<tr><td class="num" \
id="LN409">409</td><td class="line">        weightedStd  = weightedStd  / \
(m_orgImage.numPixels());</td></tr> +<tr><td class="num" id="LN410">410</td><td \
class="line">        datasd[j]    = weightedStd;</td></tr> +<tr><td class="num" \
id="LN411">411</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN412">412</td><td class="line">        <span class='keyword'>if</span> \
(!d-&gt;path.isEmpty())</td></tr> +<tr><td class="num" id="LN413">413</td><td \
class="line">        {</td></tr> +<tr><td class="num" id="LN414">414</td><td \
class="line">            owms &lt;&lt; QLatin1String(<span \
class='string_literal'>"\nChannel : "</span>)     &lt;&lt; j            &lt;&lt; \
QLatin1Char('\n');</td></tr> +<tr><td class="num" id="LN415">415</td><td \
class="line">            owms &lt;&lt; QLatin1String(<span \
class='string_literal'>"Weighted Mean : "</span>) &lt;&lt; weightedMean &lt;&lt; \
QLatin1Char('\n');</td></tr> +<tr><td class="num" id="LN416">416</td><td \
class="line">            owms &lt;&lt; QLatin1String(<span \
class='string_literal'>"Weighted Std  : "</span>) &lt;&lt; weightedStd  &lt;&lt; \
QLatin1Char('\n');</td></tr> +<tr><td class="num" id="LN417">417</td><td \
class="line">        }</td></tr> +<tr><td class="num" id="LN418">418</td><td \
class="line"> </td></tr> +<tr><td class="num" id="LN419">419</td><td class="line">    \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
"</span>));</td></tr> +<tr><td class="num" id="LN420">420</td><td class="line">       \
info.append(QString::number(j));</td></tr> +<tr><td class="num" \
id="LN421">421</td><td class="line">        info.append(QLatin1String(<span \
class='string_literal'>"\nWeighted Mean: "</span>));</td></tr> +<tr><td class="num" \
id="LN422">422</td><td class="line">        \
info.append(QString::number(weightedMean));</td></tr> +<tr><td class="num" \
id="LN423">423</td><td class="line">        info.append(QLatin1String(<span \
class='string_literal'>"\nWeighted Standard Deviation: "</span>));</td></tr> +<tr><td \
class="num" id="LN424">424</td><td class="line">        \
info.append(QString::number(weightedStd));</td></tr> +<tr><td class="num" \
id="LN425">425</td><td class="line">    }</td></tr> +<tr><td class="num" \
id="LN426">426</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN427">427</td><td class="line">    <span class='keyword'>if</span> \
(runningFlag() &amp;&amp; !d-&gt;path.isEmpty())</td></tr> +<tr><td class="num" \
id="LN428">428</td><td class="line">    {</td></tr> +<tr><td class="num" \
id="LN429">429</td><td class="line">        filewms.close();</td></tr> +<tr><td \
class="num" id="LN430">430</td><td class="line">    }</td></tr> +<tr><td class="num" \
id="LN431">431</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN432">432</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
432, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr> +<tr><td class="num" \
id="LN433">433</td><td class="line">    postProgress(80);</td></tr> +<tr><td \
class="num" id="LN434">434</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN435">435</td><td class="line">    <span class='comment'>// -- adaptation \
---------------------------------------------------------------------------------------</span></td></tr>
 +<tr><td class="num" id="LN436">436</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN437">437</td><td class="line">    <span \
class='keyword'>double</span> L = 1.2, LSoft = 0.9, Cr = 1.2, CrSoft = 0.9, Cb = 1.2, \
CbSoft = 0.9;</td></tr> +<tr><td class="num" id="LN438">438</td><td class="line"> \
</td></tr> +<tr><td class="num" id="LN439">439</td><td class="line">    <span \
class='keyword'>if</span> (runningFlag())</td></tr> +<tr><td class="num"></td><td \
class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table \
class="msgT"><tr><td valign="top"><div class="PathIndex \
PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" \
title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking true \
branch</td><td><div class="PathNav"><a href="#Path4" title="Next event \
(4)">&#x2192;</a></div></td></tr></table></div></td></tr> +<tr><td class="num" \
id="LN440">440</td><td class="line">    {</td></tr> +<tr><td class="num" \
id="LN441">441</td><td class="line">        <span class='comment'>// for 16 bits \
images only</span></td></tr> +<tr><td class="num" id="LN442">442</td><td \
class="line">        <span class='keyword'>if</span> \
(m_orgImage.sixteenBit())</td></tr> +<tr><td class="num"></td><td class="line"><div \
id="Path4" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td \
valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div \
class="PathNav"><a href="#Path3" title="Previous event \
(3)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div \
class="PathNav"><a href="#Path5" title="Next event \
(5)">&#x2192;</a></div></td></tr></table></div></td></tr> +<tr><td class="num" \
id="LN443">443</td><td class="line">        {</td></tr> +<tr><td class="num" \
id="LN444">444</td><td class="line">            <span class='keyword'>for</span> \
(<span class='keyword'>int</span> i = 0 ; i &lt; points-&gt;cols ; ++i)</td></tr> \
+<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a \
href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a href="#Path6" \
title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr> +<tr><td \
class="num"></td><td class="line"><div id="Path6" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a \
href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a href="#Path7" \
title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>  <tr><td \
class="num"></td><td class="line"><div id="Path7" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a \
href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a href="#Path8" \
                title="Next event \
                (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a \
href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a href="#Path9" \
                title="Next event \
                (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a \
href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a href="#Path10" \
                title="Next event \
                (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" \
style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a \
href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a \
href="#EndPath" title="Next event \
                (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN451">451</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN452">452</td><td class="line">                datasd[i] = \
                <span class="mrange">datasd[i]</span> / 256;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" \
style="margin-left:39ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a \
href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>The left \
                operand of '/' is a garbage value</td></tr></table></div></td></tr>
-<tr><td class="num" id="LN453">453</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN454">454</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN455">455</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN456">456</td><td class="line">        <span \
                class='keyword'>if</span> (datasd[0] &lt; 7)</td></tr>
-<tr><td class="num" id="LN457">457</td><td class="line">            L = datasd[0] - \
                0.98;</td></tr>
-<tr><td class="num" id="LN458">458</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 7 \
                &amp;&amp; datasd[0] &lt; 8)</td></tr>
-<tr><td class="num" id="LN459">459</td><td class="line">            L = datasd[0] - \
                1.2;</td></tr>
-<tr><td class="num" id="LN460">460</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 8 \
                &amp;&amp; datasd[0] &lt; 9)</td></tr>
-<tr><td class="num" id="LN461">461</td><td class="line">            L = datasd[0] - \
                1.5;</td></tr>
-<tr><td class="num" id="LN462">462</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN463">463</td><td class="line">            L = datasd[0] - \
1.7;</td></tr> +<tr><td class="num"></td><td class="line"><div id="Path8" class="msg \
msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a \
href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a \
href="#EndPath" title="Next event \
(9)">&#x2192;</a></div></td></tr></table></div></td></tr> +<tr><td class="num" \
id="LN445">445</td><td class="line">            {</td></tr> +<tr><td class="num" \
id="LN446">446</td><td class="line">                datasd[i] = <span \
class="mrange">datasd[i]</span> / 256;</td></tr> +<tr><td class="num"></td><td \
class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:39ex"><table \
class="msgT"><tr><td valign="top"><div class="PathIndex \
PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous \
event (8)">&#x2190;</a></div></td></td><td>The left operand of '/' is a garbage \
value</td></tr></table></div></td></tr> +<tr><td class="num" id="LN447">447</td><td \
class="line">            }</td></tr> +<tr><td class="num" id="LN448">448</td><td \
class="line">        }</td></tr> +<tr><td class="num" id="LN449">449</td><td \
class="line"> </td></tr> +<tr><td class="num" id="LN450">450</td><td class="line">    \
<span class='keyword'>if</span> (datasd[0] &lt; 7)</td></tr> +<tr><td class="num" \
id="LN451">451</td><td class="line">            L = datasd[0] - 0.98;</td></tr> \
+<tr><td class="num" id="LN452">452</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 7 \
&amp;&amp; datasd[0] &lt; 8)</td></tr> +<tr><td class="num" id="LN453">453</td><td \
class="line">            L = datasd[0] - 1.2;</td></tr> +<tr><td class="num" \
id="LN454">454</td><td class="line">        <span class='keyword'>else</span> <span \
class='keyword'>if</span> (datasd[0] &gt;= 8 &amp;&amp; datasd[0] &lt; 9)</td></tr> \
+<tr><td class="num" id="LN455">455</td><td class="line">            L = datasd[0] - \
1.5;</td></tr> +<tr><td class="num" id="LN456">456</td><td class="line">        <span \
class='keyword'>else</span></td></tr> +<tr><td class="num" id="LN457">457</td><td \
class="line">            L = datasd[0] - 1.7;</td></tr> +<tr><td class="num" \
id="LN458">458</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN459">459</td><td class="line">        <span class='keyword'>if</span> (L &lt; \
0)</td></tr> +<tr><td class="num" id="LN460">460</td><td class="line">            L = \
0;</td></tr> +<tr><td class="num" id="LN461">461</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN462">462</td><td class="line">        <span \
class='keyword'>if</span> (L &gt; 9)</td></tr> +<tr><td class="num" \
id="LN463">463</td><td class="line">            L = 9;</td></tr>  <tr><td class="num" \
                id="LN464">464</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN465">465</td><td class="line">        <span \
                class='keyword'>if</span> (L &lt; 0)</td></tr>
-<tr><td class="num" id="LN466">466</td><td class="line">            L = 0;</td></tr>
+<tr><td class="num" id="LN465">465</td><td class="line">        Cr = datasd[2] * \
0.8;</td></tr> +<tr><td class="num" id="LN466">466</td><td class="line">        Cb = \
datasd[1] * 0.8;</td></tr>  <tr><td class="num" id="LN467">467</td><td class="line"> \
                </td></tr>
-<tr><td class="num" id="LN468">468</td><td class="line">        <span \
                class='keyword'>if</span> (L &gt; 9)</td></tr>
-<tr><td class="num" id="LN469">469</td><td class="line">            L = 9;</td></tr>
+<tr><td class="num" id="LN468">468</td><td class="line">        <span \
class='keyword'>if</span> (Cr &gt; 7)</td></tr> +<tr><td class="num" \
id="LN469">469</td><td class="line">            Cr = 7;</td></tr>  <tr><td \
                class="num" id="LN470">470</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN471">471</td><td class="line">        Cr = datasd[2] * \
                0.8;</td></tr>
-<tr><td class="num" id="LN472">472</td><td class="line">        Cb = datasd[1] * \
0.8;</td></tr> +<tr><td class="num" id="LN471">471</td><td class="line">        <span \
class='keyword'>if</span> (Cb &gt; 7)</td></tr> +<tr><td class="num" \
id="LN472">472</td><td class="line">            Cb = 7;</td></tr>  <tr><td \
                class="num" id="LN473">473</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN474">474</td><td class="line">        <span \
                class='keyword'>if</span> (Cr &gt; 7)</td></tr>
-<tr><td class="num" id="LN475">475</td><td class="line">            Cr = \
                7;</td></tr>
-<tr><td class="num" id="LN476">476</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN477">477</td><td class="line">        <span \
                class='keyword'>if</span> (Cb &gt; 7)</td></tr>
-<tr><td class="num" id="LN478">478</td><td class="line">            Cb = \
                7;</td></tr>
-<tr><td class="num" id="LN479">479</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN480">480</td><td class="line">        L  = floorf(L  * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN481">481</td><td class="line">        Cb = floorf(Cb * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN482">482</td><td class="line">        Cr = floorf(Cr * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN483">483</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN484">484</td><td class="line">        <span \
                class='keyword'>if</span> ( L &gt; 9 )</td></tr>
-<tr><td class="num" id="LN485">485</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.8;</td></tr>
-<tr><td class="num" id="LN486">486</td><td class="line">        <span \
                class='keyword'>else</span> <span class='keyword'>if</span> ( L &gt; \
                3)</td></tr>
-<tr><td class="num" id="LN487">487</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.7;</td></tr>
-<tr><td class="num" id="LN488">488</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN489">489</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.6;</td></tr>
-<tr><td class="num" id="LN490">490</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN492">492</td><td class="line">    d-&gt;prm.thresholds[0] \
                = L;</td></tr>
-<tr><td class="num" id="LN493">493</td><td class="line">    d-&gt;prm.thresholds[1] \
                = Cb;</td></tr>
-<tr><td class="num" id="LN494">494</td><td class="line">    d-&gt;prm.thresholds[2] \
                = Cr;</td></tr>
-<tr><td class="num" id="LN495">495</td><td class="line">    d-&gt;prm.softness[0]   \
                = LSoft;</td></tr>
-<tr><td class="num" id="LN496">496</td><td class="line">    d-&gt;prm.softness[1]   \
                = CbSoft;</td></tr>
-<tr><td class="num" id="LN497">497</td><td class="line">    d-&gt;prm.softness[2]   \
                = CrSoft;</td></tr>
-<tr><td class="num" id="LN498">498</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN499">499</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
499, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"All is completed"</span>;</td></tr>
-<tr><td class="num" id="LN500">500</td><td class="line">    \
                postProgress(90);</td></tr>
-<tr><td class="num" id="LN501">501</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN502">502</td><td class="line">    <span \
class='comment'>//-- releasing matrices and closing files \
----------------------------------------------------------------------</span></td></tr>
 +<tr><td class="num" id="LN474">474</td><td class="line">        L  = floorf(L  * \
100) / 100;</td></tr> +<tr><td class="num" id="LN475">475</td><td class="line">       \
Cb = floorf(Cb * 100) / 100;</td></tr> +<tr><td class="num" id="LN476">476</td><td \
class="line">        Cr = floorf(Cr * 100) / 100;</td></tr> +<tr><td class="num" \
id="LN477">477</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN478">478</td><td class="line">        <span class='keyword'>if</span> ( L &gt; \
9 )</td></tr> +<tr><td class="num" id="LN479">479</td><td class="line">            \
LSoft = CrSoft = CbSoft = 0.8;</td></tr> +<tr><td class="num" id="LN480">480</td><td \
class="line">        <span class='keyword'>else</span> <span \
class='keyword'>if</span> ( L &gt; 3)</td></tr> +<tr><td class="num" \
id="LN481">481</td><td class="line">            LSoft = CrSoft = CbSoft = \
0.7;</td></tr> +<tr><td class="num" id="LN482">482</td><td class="line">        <span \
class='keyword'>else</span></td></tr> +<tr><td class="num" id="LN483">483</td><td \
class="line">            LSoft = CrSoft = CbSoft = 0.6;</td></tr> +<tr><td \
class="num" id="LN484">484</td><td class="line">    }</td></tr> +<tr><td class="num" \
id="LN485">485</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN486">486</td><td class="line">    d-&gt;prm.thresholds[0] = L;</td></tr> \
+<tr><td class="num" id="LN487">487</td><td class="line">    d-&gt;prm.thresholds[1] \
= Cb;</td></tr> +<tr><td class="num" id="LN488">488</td><td class="line">    \
d-&gt;prm.thresholds[2] = Cr;</td></tr> +<tr><td class="num" id="LN489">489</td><td \
class="line">    d-&gt;prm.softness[0]   = LSoft;</td></tr> +<tr><td class="num" \
id="LN490">490</td><td class="line">    d-&gt;prm.softness[1]   = CbSoft;</td></tr> \
+<tr><td class="num" id="LN491">491</td><td class="line">    d-&gt;prm.softness[2]   \
= CrSoft;</td></tr> +<tr><td class="num" id="LN492">492</td><td class="line"> \
</td></tr> +<tr><td class="num" id="LN493">493</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
493, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"All is completed"</span>;</td></tr> +<tr><td class="num" \
id="LN494">494</td><td class="line">    postProgress(90);</td></tr> +<tr><td \
class="num" id="LN495">495</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN496">496</td><td class="line">    <span class='comment'>//-- releasing matrices \
and closing files ----------------------------------------------------------------------</span></td></tr>
 +<tr><td class="num" id="LN497">497</td><td class="line"> </td></tr>
+<tr><td class="num" id="LN498">498</td><td class="line">    \
cvReleaseMat(&amp;sd);</td></tr> +<tr><td class="num" id="LN499">499</td><td \
class="line">    cvReleaseMat(&amp;stdStore);</td></tr> +<tr><td class="num" \
id="LN500">500</td><td class="line">    cvReleaseMat(&amp;meanStore);</td></tr> \
+<tr><td class="num" id="LN501">501</td><td class="line">    \
cvReleaseMat(&amp;points);</td></tr> +<tr><td class="num" id="LN502">502</td><td \
class="line">    cvReleaseMat(&amp;clusters);</td></tr>  <tr><td class="num" \
                id="LN503">503</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN504">504</td><td class="line">    \
                cvReleaseMat(&amp;sd);</td></tr>
-<tr><td class="num" id="LN505">505</td><td class="line">    \
                cvReleaseMat(&amp;stdStore);</td></tr>
-<tr><td class="num" id="LN506">506</td><td class="line">    \
                cvReleaseMat(&amp;meanStore);</td></tr>
-<tr><td class="num" id="LN507">507</td><td class="line">    \
                cvReleaseMat(&amp;points);</td></tr>
-<tr><td class="num" id="LN508">508</td><td class="line">    \
                cvReleaseMat(&amp;clusters);</td></tr>
-<tr><td class="num" id="LN509">509</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN510">510</td><td class="line">    <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; 3 ; i++)</td></tr>
-<tr><td class="num" id="LN511">511</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN512">512</td><td class="line">        <span \
                class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr>
-<tr><td class="num" id="LN513">513</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN514">514</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN515">515</td><td class="line">    \
                postProgress(100);</td></tr>
-<tr><td class="num" id="LN516">516</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN517">517</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN518">518</td><td class="line">} <span class='comment'>// \
namespace Digikam</span></td></tr> +<tr><td class="num" id="LN504">504</td><td \
class="line">    <span class='keyword'>for</span> (uint i = 0 ; i &lt; 3 ; \
++i)</td></tr> +<tr><td class="num" id="LN505">505</td><td class="line">    \
{</td></tr> +<tr><td class="num" id="LN506">506</td><td class="line">        <span \
class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr> +<tr><td class="num" \
id="LN507">507</td><td class="line">    }</td></tr> +<tr><td class="num" \
id="LN508">508</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN509">509</td><td class="line">    postProgress(100);</td></tr> +<tr><td \
class="num" id="LN510">510</td><td class="line">}</td></tr> +<tr><td class="num" \
id="LN511">511</td><td class="line"> </td></tr> +<tr><td class="num" \
id="LN512">512</td><td class="line">} <span class='comment'>// namespace \
Digikam</span></td></tr>  </table></body></html>
diff --git a/static/reports/clang/master/report-500e69.html \
b/static/reports/clang/master/report-75973d.html similarity index 100%
rename from static/reports/clang/master/report-500e69.html
rename to static/reports/clang/master/report-75973d.html
diff --git a/static/reports/clang/master/report-c8bcff.html \
b/static/reports/clang/master/report-7d93f9.html similarity index 100%
rename from static/reports/clang/master/report-c8bcff.html
rename to static/reports/clang/master/report-7d93f9.html
diff --git a/static/reports/clang/master/report-fca219.html \
b/static/reports/clang/master/report-825dde.html similarity index 100%
rename from static/reports/clang/master/report-fca219.html
rename to static/reports/clang/master/report-825dde.html
diff --git a/static/reports/clang/master/report-e3aec3.html \
b/static/reports/clang/master/report-856068.html similarity index 100%
rename from static/reports/clang/master/report-e3aec3.html
rename to static/reports/clang/master/report-856068.html
diff --git a/static/reports/clang/master/report-94982b.html \
b/static/reports/clang/master/report-945920.html similarity index 100%
rename from static/reports/clang/master/report-94982b.html
rename to static/reports/clang/master/report-945920.html
diff --git a/static/reports/clang/master/report-fb99f3.html \
b/static/reports/clang/master/report-a0c540.html similarity index 100%
rename from static/reports/clang/master/report-fb99f3.html
rename to static/reports/clang/master/report-a0c540.html
diff --git a/static/reports/clang/master/report-4f83ca.html \
b/static/reports/clang/master/report-aa98fa.html similarity index 100%
rename from static/reports/clang/master/report-4f83ca.html
rename to static/reports/clang/master/report-aa98fa.html
diff --git a/static/reports/clang/master/report-2af2bf.html \
b/static/reports/clang/master/report-b16df8.html similarity index 100%
rename from static/reports/clang/master/report-2af2bf.html
rename to static/reports/clang/master/report-b16df8.html
diff --git a/static/reports/clang/master/report-b38098.html \
b/static/reports/clang/master/report-b3762f.html similarity index 100%
rename from static/reports/clang/master/report-b38098.html
rename to static/reports/clang/master/report-b3762f.html
diff --git a/static/reports/clang/master/report-07fe1f.html \
b/static/reports/clang/master/report-b3d07a.html similarity index 100%
rename from static/reports/clang/master/report-07fe1f.html
rename to static/reports/clang/master/report-b3d07a.html
diff --git a/static/reports/clang/master/report-bf508f.html \
b/static/reports/clang/master/report-b44fa4.html similarity index 100%
rename from static/reports/clang/master/report-bf508f.html
rename to static/reports/clang/master/report-b44fa4.html
diff --git a/static/reports/clang/master/report-8a5ca9.html \
b/static/reports/clang/master/report-b9fe2b.html similarity index 100%
rename from static/reports/clang/master/report-8a5ca9.html
rename to static/reports/clang/master/report-b9fe2b.html
diff --git a/static/reports/clang/master/report-bdde48.html \
b/static/reports/clang/master/report-bdde48.html deleted file mode 100644
index 27b4c4c2..00000000
--- a/static/reports/clang/master/report-bdde48.html
+++ /dev/null
@@ -1,613 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp</title>
-<style type="text/css">
- body { color:#000000; background-color:#ffffff }
- body { font-family:Helvetica, sans-serif; font-size:10pt }
- h1 { font-size:14pt }
- .code { border-collapse:collapse; width:100%; }
- .code { font-family: "Monospace", monospace; font-size:10pt }
- .code { line-height: 1.2em }
- .comment { color: green; font-style: oblique }
- .keyword { color: blue }
- .string_literal { color: red }
- .directive { color: darkmagenta }
- .expansion { display: none; }
- .macro:hover .expansion { display: block; border: 2px solid #FF0000; padding: 2px; \
background-color:#FFF0F0; font-weight: normal;   -webkit-border-radius:5px;  \
-webkit-box-shadow:1px 1px 7px #000; position: absolute; top: -1em; left:10em; \
                z-index: 1 } 
- .macro { color: darkmagenta; background-color:LemonChiffon; position: relative }
- .num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
- .num { text-align:right; font-size:8pt }
- .num { color:#444444 }
- .line { padding-left: 1ex; border-left: 3px solid #ccc }
- .line { white-space: pre }
- .msg { -webkit-box-shadow:1px 1px 7px #000 }
- .msg { -webkit-border-radius:5px }
- .msg { font-family:Helvetica, sans-serif; font-size:8pt }
- .msg { float:left }
- .msg { padding:0.25em 1ex 0.25em 1ex }
- .msg { margin-top:10px; margin-bottom:10px }
- .msg { font-weight:bold }
- .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
- .msgT { padding:0x; spacing:0x }
- .msgEvent { background-color:#fff8b4; color:#000000 }
- .msgControl { background-color:#bbbbbb; color:#000000 }
- .mrange { background-color:#dfddf3 }
- .mrange { border-bottom:1px solid #6F9DBE }
- .PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
- .PathIndex { -webkit-border-radius:8px }
- .PathIndexEvent { background-color:#bfba87 }
- .PathIndexControl { background-color:#8c8c8c }
- .PathNav a { text-decoration:none; font-size: larger }
- .CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
- .CodeRemovalHint { background-color:#de1010 }
- .CodeRemovalHint { border-bottom:1px solid #6F9DBE }
- table.simpletable {
-   padding: 5px;
-   font-size:12pt;
-   margin:20px;
-   border-collapse: collapse; border-spacing: 0px;
- }
- td.rowname {
-   text-align:right; font-weight:bold; color:#444444;
-   padding-right:2ex; }
-</style>
-</head>
-<body>
-<!-- BUGDESC Dereference of null pointer -->
-
-<!-- BUGTYPE Dereference of null pointer -->
-
-<!-- BUGCATEGORY Logic error -->
-
-<!-- BUGFILE /mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp -->
-
-<!-- FILENAME nrestimate.cpp -->
-
-<!-- FUNCTIONNAME startAnalyse -->
-
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT cd764e5ca99ba266edc850757c6ea7b4 -->
-
-<!-- BUGLINE 394 -->
-
-<!-- BUGCOLUMN 49 -->
-
-<!-- BUGPATHLENGTH 7 -->
-
-<!-- BUGMETAEND -->
-<!-- REPORTHEADER -->
-<h3>Bug Summary</h3>
-<table class="simpletable">
-<tr><td class="rowname">File:</td><td>core/libs/dimg/filters/nr/nrestimate.cpp</td></tr>
                
-<tr><td class="rowname">Location:</td><td><a href="#EndPath">line 394, column \
                49</a></td></tr>
-<tr><td class="rowname">Description:</td><td>Dereference of null pointer</td></tr>
-</table>
-<!-- REPORTSUMMARYEXTRA -->
-<h3>Annotated Source Code</h3>
-<table class="code">
-<tr><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* \
                ============================================================</span></td></tr>
                
-<tr><td class="num" id="LN2">2</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This \
                file is a part of digiKam project</span></td></tr>
-<tr><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* \
                http://www.digikam.org</span></td></tr>
-<tr><td class="num" id="LN5">5</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date    \
                : 2012-10-18</span></td></tr>
-<tr><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* \
Description : Wavelets YCrCb Noise Reduction settings estimation by image content \
                analys.</span></td></tr>
-<tr><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*         \
                Wavelets theory is based on "À Trous" Discrete Wavelet \
                Transform</span></td></tr>
-<tr><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>*         \
                described into "The Handbook of Astronomical Image Processing" \
                book</span></td></tr>
-<tr><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*       \
                from Richard Berry and James Burnell, chapter 18.</span></td></tr>
-<tr><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*       \
                See this wiki page for details:</span></td></tr>
-<tr><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*       \
                http://community.kde.org/Digikam/SoK2012/AutoNR</span></td></tr>
-<tr><td class="num" id="LN13">13</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* \
Copyright (C) 2012-2013 by Sayantan Datta &lt;sayantan dot knz at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* \
Copyright (C) 2012-2018 by Gilles Caulier &lt;caulier dot gilles at gmail dot \
                com&gt;</span></td></tr>
-<tr><td class="num" id="LN16">16</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This \
                program is free software; you can redistribute it</span></td></tr>
-<tr><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* \
                and/or modify it under the terms of the GNU General</span></td></tr>
-<tr><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* \
                Public License as published by the Free Software \
                Foundation;</span></td></tr>
-<tr><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* \
                either version 2, or (at your option)</span></td></tr>
-<tr><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* any \
                later version.</span></td></tr>
-<tr><td class="num" id="LN22">22</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* This \
                program is distributed in the hope that it will be \
                useful,</span></td></tr>
-<tr><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* but \
                WITHOUT ANY WARRANTY; without even the implied warranty \
                of</span></td></tr>
-<tr><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>* \
                MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See \
                the</span></td></tr>
-<tr><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* GNU \
                General Public License for more details.</span></td></tr>
-<tr><td class="num" id="LN27">27</td><td class="line"> <span \
                class='comment'>*</span></td></tr>
-<tr><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* \
                ============================================================ \
                */</span></td></tr>
-<tr><td class="num" id="LN29">29</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN30">30</td><td class="line"><span \
                class='directive'>#include "nrestimate.h"</span></td></tr>
-<tr><td class="num" id="LN31">31</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN32">32</td><td class="line"><span class='comment'>// C++ \
                includes</span></td></tr>
-<tr><td class="num" id="LN33">33</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN34">34</td><td class="line"><span \
                class='directive'>#include &lt;cmath&gt;</span></td></tr>
-<tr><td class="num" id="LN35">35</td><td class="line"><span \
                class='directive'>#include &lt;cfloat&gt;</span></td></tr>
-<tr><td class="num" id="LN36">36</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN37">37</td><td class="line"><span class='comment'>// \
                OpenCV includes</span></td></tr>
-<tr><td class="num" id="LN38">38</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN39">39</td><td class="line"><span \
                class='directive'>#include "digikam_opencv.h"</span></td></tr>
-<tr><td class="num" id="LN40">40</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN41">41</td><td class="line"><span class='comment'>// Qt \
                includes.</span></td></tr>
-<tr><td class="num" id="LN42">42</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN43">43</td><td class="line"><span \
                class='directive'>#include &lt;QTextStream&gt;</span></td></tr>
-<tr><td class="num" id="LN44">44</td><td class="line"><span \
                class='directive'>#include &lt;QFile&gt;</span></td></tr>
-<tr><td class="num" id="LN45">45</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local \
                includes</span></td></tr>
-<tr><td class="num" id="LN47">47</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN48">48</td><td class="line"><span \
                class='directive'>#include "digikam_debug.h"</span></td></tr>
-<tr><td class="num" id="LN49">49</td><td class="line"><span \
                class='directive'>#include "nrfilter.h"</span></td></tr>
-<tr><td class="num" id="LN50">50</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN51">51</td><td class="line"><span \
                class='keyword'>namespace</span> Digikam</td></tr>
-<tr><td class="num" id="LN52">52</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN53">53</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN54">54</td><td class="line"><span \
class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span \
class='expansion'>__attribute__((visibility("hidden")))</span></span> \
                NREstimate::Private</td></tr>
-<tr><td class="num" id="LN55">55</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN56">56</td><td class="line"><span \
                class='keyword'>public</span>:</td></tr>
-<tr><td class="num" id="LN57">57</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN58">58</td><td class="line">    <span \
                class='keyword'>explicit</span> Private()</td></tr>
-<tr><td class="num" id="LN59">59</td><td class="line">      : \
                clusterCount(30),</td></tr>
-<tr><td class="num" id="LN60">60</td><td class="line">        size(512)</td></tr>
-<tr><td class="num" id="LN61">61</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN62">62</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; c &lt; 3 ; \
                c++)</td></tr>
-<tr><td class="num" id="LN63">63</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN64">64</td><td class="line">            fimg[c] = \
                0;</td></tr>
-<tr><td class="num" id="LN65">65</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN66">66</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN67">67</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN68">68</td><td class="line">    NRContainer prm;</td></tr>
-<tr><td class="num" id="LN69">69</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN70">70</td><td class="line">    QString     path;   <span \
                class='comment'>// Path to host log files.</span></td></tr>
-<tr><td class="num" id="LN71">71</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN72">72</td><td class="line">    <span \
                class='keyword'>float</span>*      fimg[3];</td></tr>
-<tr><td class="num" id="LN73">73</td><td class="line">    <span \
                class='keyword'>const</span> uint  clusterCount;</td></tr>
-<tr><td class="num" id="LN74">74</td><td class="line">    <span \
class='keyword'>const</span> uint  size;   <span class='comment'>// Size of squared \
                original image.</span></td></tr>
-<tr><td class="num" id="LN75">75</td><td class="line">};</td></tr>
-<tr><td class="num" id="LN76">76</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN77">77</td><td class="line">NREstimate::NREstimate(DImg* \
<span class='keyword'>const</span> img, QObject* <span class='keyword'>const</span> \
                parent)</td></tr>
-<tr><td class="num" id="LN78">78</td><td class="line">    : \
DImgThreadedAnalyser(parent, QLatin1String(<span \
                class='string_literal'>"NREstimate"</span>)),</td></tr>
-<tr><td class="num" id="LN79">79</td><td class="line">      d(<span \
                class='keyword'>new</span> Private)</td></tr>
-<tr><td class="num" id="LN80">80</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN81">81</td><td class="line">    <span class='comment'>// \
Use the Top/Left corner of 256x256 pixels to analys noise contents from \
                image.</span></td></tr>
-<tr><td class="num" id="LN82">82</td><td class="line">    <span class='comment'>// \
                This will speed-up computation time with OpenCV</span></td></tr>
-<tr><td class="num" id="LN83">83</td><td class="line">    <span \
class='keyword'>int</span> w = (img-&gt;width()  &gt; d-&gt;size) ? d-&gt;size : \
                img-&gt;width();</td></tr>
-<tr><td class="num" id="LN84">84</td><td class="line">    <span \
class='keyword'>int</span> h = (img-&gt;height() &gt; d-&gt;size) ? d-&gt;size : \
                img-&gt;height();</td></tr>
-<tr><td class="num" id="LN85">85</td><td class="line">    \
                setOriginalImage(img-&gt;copy(0, 0, w, h));</td></tr>
-<tr><td class="num" id="LN86">86</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN87">87</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN88">88</td><td \
                class="line">NREstimate::~NREstimate()</td></tr>
-<tr><td class="num" id="LN89">89</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN90">90</td><td class="line">    <span \
                class='keyword'>delete</span> d;</td></tr>
-<tr><td class="num" id="LN91">91</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN92">92</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN93">93</td><td class="line"><span \
class='keyword'>void</span> NREstimate::setLogFilesPath(<span \
                class='keyword'>const</span> QString&amp; path)</td></tr>
-<tr><td class="num" id="LN94">94</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN95">95</td><td class="line">    d-&gt;path = \
                path;</td></tr>
-<tr><td class="num" id="LN96">96</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN97">97</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN98">98</td><td class="line"><span \
class='keyword'>void</span> NREstimate::readImage() <span \
                class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN99">99</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN100">100</td><td class="line">    DColor col;</td></tr>
-<tr><td class="num" id="LN101">101</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN102">102</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> c = 0 ; runningFlag() \
                &amp;&amp; (c &lt; 3) ; c++)</td></tr>
-<tr><td class="num" id="LN103">103</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN104">104</td><td class="line">        d-&gt;fimg[c] = \
<span class='keyword'>new</span> <span \
                class='keyword'>float</span>[m_orgImage.numPixels()];</td></tr>
-<tr><td class="num" id="LN105">105</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN106">106</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN107">107</td><td class="line">    <span \
                class='keyword'>int</span> j = 0;</td></tr>
-<tr><td class="num" id="LN108">108</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN109">109</td><td class="line">    <span \
class='keyword'>for</span> (uint y = 0 ; runningFlag() &amp;&amp; (y &lt; \
                m_orgImage.height()) ; y++)</td></tr>
-<tr><td class="num" id="LN110">110</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN111">111</td><td class="line">        <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
                m_orgImage.width()) ; x++)</td></tr>
-<tr><td class="num" id="LN112">112</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN113">113</td><td class="line">            col           = \
                m_orgImage.getPixelColor(x, y);</td></tr>
-<tr><td class="num" id="LN114">114</td><td class="line">            d-&gt;fimg[0][j] \
                = col.red();</td></tr>
-<tr><td class="num" id="LN115">115</td><td class="line">            d-&gt;fimg[1][j] \
                = col.green();</td></tr>
-<tr><td class="num" id="LN116">116</td><td class="line">            d-&gt;fimg[2][j] \
                = col.blue();</td></tr>
-<tr><td class="num" id="LN117">117</td><td class="line">            j++;</td></tr>
-<tr><td class="num" id="LN118">118</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN119">119</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN120">120</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN121">121</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN122">122</td><td class="line">NRContainer \
                NREstimate::settings() <span class='keyword'>const</span></td></tr>
-<tr><td class="num" id="LN123">123</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN124">124</td><td class="line">    <span \
                class='keyword'>return</span> d-&gt;prm;</td></tr>
-<tr><td class="num" id="LN125">125</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN126">126</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN127">127</td><td class="line"><span \
                class='keyword'>void</span> NREstimate::startAnalyse()</td></tr>
-<tr><td class="num" id="LN128">128</td><td class="line">{</td></tr>
-<tr><td class="num" id="LN129">129</td><td class="line">    readImage();</td></tr>
-<tr><td class="num" id="LN130">130</td><td class="line">    \
                postProgress(5);</td></tr>
-<tr><td class="num" id="LN131">131</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN132">132</td><td class="line">    <span \
class='comment'>//--convert fimg to \
CvMat*-------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN133">133</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN134">134</td><td class="line">    <span class='comment'>// \
                convert the image into YCrCb color model</span></td></tr>
-<tr><td class="num" id="LN135">135</td><td class="line">    \
                NRFilter::srgb2ycbcr(d-&gt;fimg, m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN136">136</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN137">137</td><td class="line">    <span class='comment'>// \
                One dimensional CvMat which stores the image</span></td></tr>
-<tr><td class="num" id="LN138">138</td><td class="line">    CvMat* points    = \
cvCreateMat(m_orgImage.numPixels(), 3, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN139">139</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN140">140</td><td class="line">    <span class='comment'>// \
                matrix to store the index of the clusters</span></td></tr>
-<tr><td class="num" id="LN141">141</td><td class="line">    CvMat* clusters  = \
cvCreateMat(m_orgImage.numPixels(), 1, <span class='macro'>CV_32SC1<span \
class='expansion'>(((4) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN142">142</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN143">143</td><td class="line">    <span class='comment'>// \
pointer variable to handle the CvMat* points (the image in CvMat \
                format)</span></td></tr>
-<tr><td class="num" id="LN144">144</td><td class="line">    <span \
class='keyword'>float</span>* pointsPtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(points-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN145">145</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN146">146</td><td class="line">    <span \
class='keyword'>for</span> (uint x = 0 ; runningFlag() &amp;&amp; (x &lt; \
                m_orgImage.numPixels()) ; x++)</td></tr>
-<tr><td class="num" id="LN147">147</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN148">148</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> y = 0 ; runningFlag() \
                &amp;&amp; (y &lt; 3) ; y++)</td></tr>
-<tr><td class="num" id="LN149">149</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN150">150</td><td class="line">            *pointsPtr++ = \
                (<span class='keyword'>float</span>)d-&gt;fimg[y][x];</td></tr>
-<tr><td class="num" id="LN151">151</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN152">152</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN153">153</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN154">154</td><td class="line">    <span class='comment'>// \
                Array to store the centers of the clusters</span></td></tr>
-<tr><td class="num" id="LN155">155</td><td class="line">    CvArr* centers = \
                0;</td></tr>
-<tr><td class="num" id="LN156">156</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN157">157</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
157, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Everything ready for the cvKmeans2 or as it seems \
                to"</span>;</td></tr>
-<tr><td class="num" id="LN158">158</td><td class="line">    \
                postProgress(10);</td></tr>
-<tr><td class="num" id="LN159">159</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN160">160</td><td class="line">    <span \
class='comment'>//-- KMEANS \
---------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN161">161</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN162">162</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">1</div></td><td>Taking false branch</td><td><div \
class="PathNav"><a href="#Path2" title="Next event \
                (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN163">163</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN164">164</td><td class="line">        cvKMeans2(points, \
                d-&gt;clusterCount, clusters,</td></tr>
-<tr><td class="num" id="LN165">165</td><td class="line">                  \
cvTermCriteria(<span class='macro'>CV_TERMCRIT_EPS<span \
class='expansion'>2</span></span> + <span class='macro'>CV_TERMCRIT_ITER<span \
                class='expansion'>1</span></span>, 10, 1.0), 3, 0, 0, centers, \
                0);</td></tr>
-<tr><td class="num" id="LN166">166</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN167">167</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN168">168</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
168, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"cvKmeans2 successfully run"</span>;</td></tr>
-<tr><td class="num" id="LN169">169</td><td class="line">    \
                postProgress(15);</td></tr>
-<tr><td class="num" id="LN170">170</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN171">171</td><td class="line">    <span \
class='comment'>//-- Divide into cluster-&gt;columns, sample-&gt;rows, in matrix \
                standard deviation ---------------------------</span></td></tr>
-<tr><td class="num" id="LN172">172</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN173">173</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rowPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN174">174</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN175">175</td><td class="line">    <span \
class='comment'>//the row position array would just make the hold the number of \
                elements in each cluster</span></td></tr>
-<tr><td class="num" id="LN176">176</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN177">177</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN178">178</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN179">179</td><td class="line">        <span \
                class='comment'>//initializing the cluster count \
                array</span></td></tr>
-<tr><td class="num" id="LN180">180</td><td class="line">        rowPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN181">181</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN182">182</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN183">183</td><td class="line">    <span \
                class='keyword'>int</span> rowIndex, columnIndex;</td></tr>
-<tr><td class="num" id="LN184">184</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN185">185</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                m_orgImage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN186">186</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN187">187</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN188">188</td><td class="line">        \
                rowPosition[columnIndex]++;</td></tr>
-<tr><td class="num" id="LN189">189</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN190">190</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN191">191</td><td class="line"><span \
                class='comment'>/*</span></td></tr>
-<tr><td class="num" id="LN192">192</td><td class="line">    <span \
class='comment'>qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Lets see what the rowPosition \
                array looks like : ";</span></td></tr>
-<tr><td class="num" id="LN193">193</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN194">194</td><td class="line">    <span \
class='comment'>for(uint i = 0 ; runningFlag() &amp;&amp; (i &lt; d-&gt;clusterCount) \
                ; i++)</span></td></tr>
-<tr><td class="num" id="LN195">195</td><td class="line">    <span \
                class='comment'>{</span></td></tr>
-<tr><td class="num" id="LN196">196</td><td class="line">        <span \
class='comment'>qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Cluster : "&lt;&lt; i &lt;&lt; " \
                the count is :" &lt;&lt; rowPosition[i];</span></td></tr>
-<tr><td class="num" id="LN197">197</td><td class="line">    <span \
                class='comment'>}</span></td></tr>
-<tr><td class="num" id="LN198">198</td><td class="line"><span \
                class='comment'>*/</span></td></tr>
-<tr><td class="num" id="LN199">199</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN200">200</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
200, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"array indexed, and ready to find \
                maximum"</span>;</td></tr>
-<tr><td class="num" id="LN201">201</td><td class="line">    \
                postProgress(20);</td></tr>
-<tr><td class="num" id="LN202">202</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN203">203</td><td class="line">    <span \
class='comment'>//-- Finding maximum of the rowPosition array \
                ------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN204">204</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN205">205</td><td class="line">    <span \
                class='keyword'>int</span> max = rowPosition[0];</td></tr>
-<tr><td class="num" id="LN206">206</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN207">207</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 1 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN208">208</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN209">209</td><td class="line">        <span \
                class='keyword'>if</span> (rowPosition[i] &gt; max)</td></tr>
-<tr><td class="num" id="LN210">210</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN211">211</td><td class="line">            max = \
                rowPosition[i];</td></tr>
-<tr><td class="num" id="LN212">212</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN213">213</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN214">214</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN215">215</td><td class="line">    QString \
                maxString;</td></tr>
-<tr><td class="num" id="LN216">216</td><td class="line">    \
                maxString.append(QString::number(max));</td></tr>
-<tr><td class="num" id="LN217">217</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN218">218</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
218, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; \
QString::fromLatin1(<span class='string_literal'>"maximum declared = \
                %1"</span>).arg(maxString);</td></tr>
-<tr><td class="num" id="LN219">219</td><td class="line">    \
                postProgress(25);</td></tr>
-<tr><td class="num" id="LN220">220</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN221">221</td><td class="line">    <span \
class='comment'>//-- Divide and conquer \
---------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN222">222</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN223">223</td><td class="line">    CvMat* sd = 0;</td></tr>
-<tr><td class="num" id="LN224">224</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN225">225</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a \
href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path3" title="Next event \
                (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN226">226</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN227">227</td><td class="line">        sd = \
cvCreateMat(max, (d-&gt;clusterCount * points-&gt;cols), <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN228">228</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN229">229</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN230">230</td><td class="line">    \
                postProgress(30);</td></tr>
-<tr><td class="num" id="LN231">231</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN232">232</td><td class="line">    <span \
class='comment'>//-- Initialize the rowPosition array \
                -------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN233">233</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN234">234</td><td class="line">    \
QScopedArrayPointer&lt;<span class='keyword'>int</span>&gt; rPosition(<span \
class='keyword'>new</span> <span \
                class='keyword'>int</span>[d-&gt;clusterCount]);</td></tr>
-<tr><td class="num" id="LN235">235</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN236">236</td><td class="line">    <span \
class='keyword'>for</span> (uint i = 0 ; runningFlag() &amp;&amp; (i &lt; \
                d-&gt;clusterCount) ; i++)</td></tr>
-<tr><td class="num" id="LN237">237</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN238">238</td><td class="line">        rPosition[i] = \
                0;</td></tr>
-<tr><td class="num" id="LN239">239</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN240">240</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN241">241</td><td class="line">    <span \
                class='keyword'>float</span>* ptr = 0;</td></tr>
-<tr><td class="num" id="LN242">242</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN243">243</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
243, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"The rowPosition array is \
                ready!"</span>;</td></tr>
-<tr><td class="num" id="LN244">244</td><td class="line">    \
                postProgress(40);</td></tr>
-<tr><td class="num" id="LN245">245</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN246">246</td><td class="line">    <span \
class='keyword'>for</span> (uint i=0 ; runningFlag() &amp;&amp; (i &lt; \
                m_orgImage.numPixels()) ; i++)</td></tr>
-<tr><td class="num" id="LN247">247</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN248">248</td><td class="line">        columnIndex = \
                clusters-&gt;data.i[i];</td></tr>
-<tr><td class="num" id="LN249">249</td><td class="line">        rowIndex    = \
                rPosition[columnIndex];</td></tr>
-<tr><td class="num" id="LN250">250</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN251">251</td><td class="line">        <span \
                class='comment'>//moving to the right row</span></td></tr>
-<tr><td class="num" id="LN252">252</td><td class="line">        ptr         = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(sd-&gt;data.ptr + \
                rowIndex*(sd-&gt;step));</td></tr>
-<tr><td class="num" id="LN253">253</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN254">254</td><td class="line">        <span \
                class='comment'>//moving to the right column</span></td></tr>
-<tr><td class="num" id="LN255">255</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; columnIndex) ; j++)</td></tr>
-<tr><td class="num" id="LN256">256</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN257">257</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN258">258</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN259">259</td><td class="line">                \
                ptr++;</td></tr>
-<tr><td class="num" id="LN260">260</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN261">261</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN262">262</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN263">263</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> z = 0 ; runningFlag() \
                &amp;&amp; (z &lt; (points-&gt;cols)) ; z++)</td></tr>
-<tr><td class="num" id="LN264">264</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN265">265</td><td class="line">            *ptr++ = \
                cvGet2D(points, i, z).val[0];</td></tr>
-<tr><td class="num" id="LN266">266</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN267">267</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN268">268</td><td class="line">        \
                rPosition[columnIndex] = rPosition[columnIndex] + 1;</td></tr>
-<tr><td class="num" id="LN269">269</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN270">270</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN271">271</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
271, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"sd matrix creation over!"</span>;</td></tr>
-<tr><td class="num" id="LN272">272</td><td class="line">    \
                postProgress(50);</td></tr>
-<tr><td class="num" id="LN273">273</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN274">274</td><td class="line">    <span \
class='comment'>//-- This part of the code would involve the sd matrix and make the \
                mean and the std of the data -------------------</span></td></tr>
-<tr><td class="num" id="LN275">275</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN276">276</td><td class="line">    CvScalar std;</td></tr>
-<tr><td class="num" id="LN277">277</td><td class="line">    CvScalar mean;</td></tr>
-<tr><td class="num" id="LN278">278</td><td class="line">    <span \
                class="mrange">CvMat*   meanStore</span>    = 0;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a \
href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>'meanStore' \
initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path4" \
                title="Next event \
                (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN279">279</td><td class="line">    CvMat*   stdStore     = \
                0;</td></tr>
-<tr><td class="num" id="LN280">280</td><td class="line">    <span \
                class='keyword'>float</span>*   meanStorePtr = 0;</td></tr>
-<tr><td class="num" id="LN281">281</td><td class="line">    <span \
                class='keyword'>float</span>*   stdStorePtr  = 0;</td></tr>
-<tr><td class="num" id="LN282">282</td><td class="line">    <span \
class='keyword'>int</span>      totalcount   = 0; <span class='comment'>// Number of \
                non-empty clusters</span></td></tr>
-<tr><td class="num" id="LN283">283</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN284">284</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a \
href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path5" title="Next event \
                (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN285">285</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN286">286</td><td class="line">        meanStore    = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN287">287</td><td class="line">        stdStore     = \
cvCreateMat(d-&gt;clusterCount, points-&gt;cols, <span class='macro'>CV_32FC1<span \
class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + (((1)-1) &lt;&lt; \
                3))</span></span>);</td></tr>
-<tr><td class="num" id="LN288">288</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN289">289</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN290">290</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN291">291</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN292">292</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; runningFlag() \
                &amp;&amp; (i &lt; sd-&gt;cols) ; i++)</td></tr>
-<tr><td class="num" id="LN293">293</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN294">294</td><td class="line">        <span \
class='keyword'>if</span> (runningFlag() &amp;&amp; (rowPosition[(i/points-&gt;cols)] \
                &gt;= 1))</td></tr>
-<tr><td class="num" id="LN295">295</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN296">296</td><td class="line">            CvMat* \
workingArr = cvCreateMat(rowPosition[(i / points-&gt;cols)], 1, <span \
class='macro'>CV_32FC1<span class='expansion'>(((5) &amp; ((1 &lt;&lt; 3) - 1)) + \
                (((1)-1) &lt;&lt; 3))</span></span>);</td></tr>
-<tr><td class="num" id="LN297">297</td><td class="line">            ptr              \
= <span class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(workingArr-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN298">298</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN299">299</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; rowPosition[(i / (points-&gt;cols))]) ; \
                j++)</td></tr>
-<tr><td class="num" id="LN300">300</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN301">301</td><td class="line">                *ptr++ = \
                cvGet2D(sd, j, i).val[0];</td></tr>
-<tr><td class="num" id="LN302">302</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN303">303</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN304">304</td><td class="line">            \
                cvAvgSdv(workingArr, &amp;mean, &amp;std);</td></tr>
-<tr><td class="num" id="LN305">305</td><td class="line">            *meanStorePtr++ \
                = (<span class='keyword'>float</span>)mean.val[0];</td></tr>
-<tr><td class="num" id="LN306">306</td><td class="line">            *stdStorePtr++  \
                = (<span class='keyword'>float</span>)std.val[0];</td></tr>
-<tr><td class="num" id="LN307">307</td><td class="line">            \
                totalcount++;</td></tr>
-<tr><td class="num" id="LN308">308</td><td class="line">            \
                cvReleaseMat(&amp;workingArr);</td></tr>
-<tr><td class="num" id="LN309">309</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN310">310</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN311">311</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN312">312</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
312, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Make the mean and the std of the \
                data"</span>;</td></tr>
-<tr><td class="num" id="LN313">313</td><td class="line">    \
                postProgress(60);</td></tr>
-<tr><td class="num" id="LN314">314</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN315">315</td><td class="line">    <span class='comment'>// \
-----------------------------------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN316">316</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN317">317</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a \
href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Taking false \
branch</td><td><div class="PathNav"><a href="#Path6" title="Next event \
                (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN318">318</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN319">319</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(meanStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN320">320</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN321">321</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN322">322</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN323">323</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN324">324</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN325">325</td><td class="line">        QString logFile = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN326">326</td><td class="line">        logFile         = \
                logFile.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN327">327</td><td class="line">        logFile         = \
                logFile.left(logFile.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN328">328</td><td class="line">        \
logFile.append(QLatin1String(<span \
                class='string_literal'>"logMeanStd.txt"</span>));</td></tr>
-<tr><td class="num" id="LN329">329</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN330">330</td><td class="line">        QFile \
                filems(logFile);</td></tr>
-<tr><td class="num" id="LN331">331</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN332">332</td><td class="line">        <span \
class='keyword'>if</span> (filems.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN333">333</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN334">334</td><td class="line">            QTextStream \
                oms(&amp;filems);</td></tr>
-<tr><td class="num" id="LN335">335</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"Mean Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN336">336</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN337">337</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN338">338</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN339">339</td><td class="line">                oms &lt;&lt; \
                *meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN340">340</td><td class="line">                oms &lt;&lt; \
                <span class='string_literal'>"\t"</span>;</td></tr>
-<tr><td class="num" id="LN341">341</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN342">342</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN343">343</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN344">344</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN345">345</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN346">346</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN347">347</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN348">348</td><td class="line">            oms &lt;&lt; \
                <span class='string_literal'>"\nStd Data\n"</span>;</td></tr>
-<tr><td class="num" id="LN349">349</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN350">350</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                totalcount ; i++)</td></tr>
-<tr><td class="num" id="LN351">351</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN352">352</td><td class="line">                oms &lt;&lt; \
                *stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN353">353</td><td class="line">                oms &lt;&lt; \
                <span class='string_literal'>"\t"</span>;</td></tr>
-<tr><td class="num" id="LN354">354</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN355">355</td><td class="line">                <span \
                class='keyword'>if</span> ((i+1)%3 == 0)</td></tr>
-<tr><td class="num" id="LN356">356</td><td class="line">                {</td></tr>
-<tr><td class="num" id="LN357">357</td><td class="line">                    oms \
                &lt;&lt; <span class='string_literal'>"\n"</span>;</td></tr>
-<tr><td class="num" id="LN358">358</td><td class="line">                }</td></tr>
-<tr><td class="num" id="LN359">359</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN360">360</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN361">361</td><td class="line">            \
                filems.close();</td></tr>
-<tr><td class="num" id="LN362">362</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN363">363</td><td class="line">            <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
363, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
class='string_literal'>"Done with the basic work of storing the mean and the \
                std"</span>;</td></tr>
-<tr><td class="num" id="LN364">364</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN365">365</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN366">366</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN367">367</td><td class="line">    \
                postProgress(70);</td></tr>
-<tr><td class="num" id="LN368">368</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN369">369</td><td class="line">    <span \
class='comment'>//-- Calculating weighted mean, and weighted std \
                -----------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN370">370</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN371">371</td><td class="line">    QTextStream \
                owms;</td></tr>
-<tr><td class="num" id="LN372">372</td><td class="line">    QFile       \
                filewms;</td></tr>
-<tr><td class="num" id="LN373">373</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN374">374</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN375">375</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN376">376</td><td class="line">        QString logFile2 = \
                d-&gt;path;</td></tr>
-<tr><td class="num" id="LN377">377</td><td class="line">        logFile2         = \
                logFile2.section(QLatin1Char('/'), -1);</td></tr>
-<tr><td class="num" id="LN378">378</td><td class="line">        logFile2         = \
                logFile2.left(logFile2.indexOf(QLatin1Char('.')));</td></tr>
-<tr><td class="num" id="LN379">379</td><td class="line">        \
logFile2.append(QLatin1String(<span \
                class='string_literal'>"logWeightedMeanStd.txt"</span>));</td></tr>
-<tr><td class="num" id="LN380">380</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN381">381</td><td class="line">        \
                filewms.setFileName(logFile2);</td></tr>
-<tr><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN383">383</td><td class="line">        <span \
class='keyword'>if</span> (filewms.open(QIODevice::WriteOnly | \
                QIODevice::Text))</td></tr>
-<tr><td class="num" id="LN384">384</td><td class="line">            \
                owms.setDevice(&amp;filewms);</td></tr>
-<tr><td class="num" id="LN385">385</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN386">386</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN387">387</td><td class="line">    QString info;</td></tr>
-<tr><td class="num" id="LN388">388</td><td class="line">    <span \
                class='keyword'>float</span>   weightedMean = 0.0f;</td></tr>
-<tr><td class="num" id="LN389">389</td><td class="line">    <span \
                class='keyword'>float</span>   weightedStd  = 0.0f;</td></tr>
-<tr><td class="num" id="LN390">390</td><td class="line">    <span \
                class='keyword'>float</span>   datasd[3]    = {0.0f, 0.0f, \
                0.0f};</td></tr>
-<tr><td class="num" id="LN391">391</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN392">392</td><td class="line">    <span \
class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() \
                &amp;&amp; (j &lt; points-&gt;cols) ; j++)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" \
style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a \
href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Loop \
condition is true.  Entering loop body</td><td><div class="PathNav"><a \
href="#EndPath" title="Next event \
                (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num" id="LN393">393</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN394">394</td><td class="line">        meanStorePtr = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
class='keyword'>float</span>*&gt;(<span \
                class="mrange">meanStore-&gt;data.ptr</span>);</td></tr>
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" \
style="margin-left:49ex"><table class="msgT"><tr><td valign="top"><div \
class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a \
href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Dereference \
                of null pointer</td></tr></table></div></td></tr>
-<tr><td class="num" id="LN395">395</td><td class="line">        stdStorePtr  = <span \
class='keyword'>reinterpret_cast</span>&lt;<span \
                class='keyword'>float</span>*&gt;(stdStore-&gt;data.ptr);</td></tr>
-<tr><td class="num" id="LN396">396</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN397">397</td><td class="line">        <span \
class='keyword'>for</span> (<span class='keyword'>int</span> moveToChannel = 0 ; \
                moveToChannel &lt;= j ; moveToChannel++)</td></tr>
-<tr><td class="num" id="LN398">398</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN399">399</td><td class="line">            \
                meanStorePtr++;</td></tr>
-<tr><td class="num" id="LN400">400</td><td class="line">            \
                stdStorePtr++;</td></tr>
-<tr><td class="num" id="LN401">401</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN402">402</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN403">403</td><td class="line">        <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; d-&gt;clusterCount ; \
                i++)</td></tr>
-<tr><td class="num" id="LN404">404</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN405">405</td><td class="line">            <span \
                class='keyword'>if</span> (rowPosition[i] &gt;= 1)</td></tr>
-<tr><td class="num" id="LN406">406</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN407">407</td><td class="line">                weightedMean \
                += (*meanStorePtr) * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN408">408</td><td class="line">                weightedStd  \
                += (*stdStorePtr)  * rowPosition[i];</td></tr>
-<tr><td class="num" id="LN409">409</td><td class="line">                meanStorePtr \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN410">410</td><td class="line">                stdStorePtr  \
                += points-&gt;cols;</td></tr>
-<tr><td class="num" id="LN411">411</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN412">412</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN413">413</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN414">414</td><td class="line">        weightedMean = \
                weightedMean / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN415">415</td><td class="line">        weightedStd  = \
                weightedStd  / (m_orgImage.numPixels());</td></tr>
-<tr><td class="num" id="LN416">416</td><td class="line">        datasd[j]    = \
                weightedStd;</td></tr>
-<tr><td class="num" id="LN417">417</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN418">418</td><td class="line">        <span \
                class='keyword'>if</span> (!d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN419">419</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN420">420</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"\nChannel : "</span>)     &lt;&lt; j      \
                &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN421">421</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Mean : "</span>) &lt;&lt; \
                weightedMean &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN422">422</td><td class="line">            owms &lt;&lt; \
QLatin1String(<span class='string_literal'>"Weighted Std  : "</span>) &lt;&lt; \
                weightedStd  &lt;&lt; QLatin1Char('\n');</td></tr>
-<tr><td class="num" id="LN423">423</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN424">424</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN425">425</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\n\nChannel: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN426">426</td><td class="line">        \
                info.append(QString::number(j));</td></tr>
-<tr><td class="num" id="LN427">427</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Mean: \
                "</span>));</td></tr>
-<tr><td class="num" id="LN428">428</td><td class="line">        \
                info.append(QString::number(weightedMean));</td></tr>
-<tr><td class="num" id="LN429">429</td><td class="line">        \
info.append(QLatin1String(<span class='string_literal'>"\nWeighted Standard \
                Deviation: "</span>));</td></tr>
-<tr><td class="num" id="LN430">430</td><td class="line">        \
                info.append(QString::number(weightedStd));</td></tr>
-<tr><td class="num" id="LN431">431</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN432">432</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN433">433</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag() &amp;&amp; \
                !d-&gt;path.isEmpty())</td></tr>
-<tr><td class="num" id="LN434">434</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN435">435</td><td class="line">        \
                filewms.close();</td></tr>
-<tr><td class="num" id="LN436">436</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN437">437</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN438">438</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
438, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"Info : "</span> &lt;&lt; info;</td></tr>
-<tr><td class="num" id="LN439">439</td><td class="line">    \
                postProgress(80);</td></tr>
-<tr><td class="num" id="LN440">440</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN441">441</td><td class="line">    <span class='comment'>// \
-- adaptation ---------------------------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN442">442</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN443">443</td><td class="line">    <span \
class='keyword'>double</span> L = 1.2, LSoft = 0.9, Cr = 1.2, CrSoft = 0.9, Cb = 1.2, \
                CbSoft = 0.9;</td></tr>
-<tr><td class="num" id="LN444">444</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN445">445</td><td class="line">    <span \
                class='keyword'>if</span> (runningFlag())</td></tr>
-<tr><td class="num" id="LN446">446</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN447">447</td><td class="line">        <span \
                class='comment'>// for 16 bits images only</span></td></tr>
-<tr><td class="num" id="LN448">448</td><td class="line">        <span \
                class='keyword'>if</span> (m_orgImage.sixteenBit())</td></tr>
-<tr><td class="num" id="LN449">449</td><td class="line">        {</td></tr>
-<tr><td class="num" id="LN450">450</td><td class="line">            <span \
class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; \
                points-&gt;cols ; i++)</td></tr>
-<tr><td class="num" id="LN451">451</td><td class="line">            {</td></tr>
-<tr><td class="num" id="LN452">452</td><td class="line">                datasd[i] = \
                datasd[i] / 256;</td></tr>
-<tr><td class="num" id="LN453">453</td><td class="line">            }</td></tr>
-<tr><td class="num" id="LN454">454</td><td class="line">        }</td></tr>
-<tr><td class="num" id="LN455">455</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN456">456</td><td class="line">        <span \
                class='keyword'>if</span> (datasd[0] &lt; 7)</td></tr>
-<tr><td class="num" id="LN457">457</td><td class="line">            L = datasd[0] - \
                0.98;</td></tr>
-<tr><td class="num" id="LN458">458</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 7 \
                &amp;&amp; datasd[0] &lt; 8)</td></tr>
-<tr><td class="num" id="LN459">459</td><td class="line">            L = datasd[0] - \
                1.2;</td></tr>
-<tr><td class="num" id="LN460">460</td><td class="line">        <span \
class='keyword'>else</span> <span class='keyword'>if</span> (datasd[0] &gt;= 8 \
                &amp;&amp; datasd[0] &lt; 9)</td></tr>
-<tr><td class="num" id="LN461">461</td><td class="line">            L = datasd[0] - \
                1.5;</td></tr>
-<tr><td class="num" id="LN462">462</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN463">463</td><td class="line">            L = datasd[0] - \
                1.7;</td></tr>
-<tr><td class="num" id="LN464">464</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN465">465</td><td class="line">        <span \
                class='keyword'>if</span> (L &lt; 0)</td></tr>
-<tr><td class="num" id="LN466">466</td><td class="line">            L = 0;</td></tr>
-<tr><td class="num" id="LN467">467</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN468">468</td><td class="line">        <span \
                class='keyword'>if</span> (L &gt; 9)</td></tr>
-<tr><td class="num" id="LN469">469</td><td class="line">            L = 9;</td></tr>
-<tr><td class="num" id="LN470">470</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN471">471</td><td class="line">        Cr = datasd[2] * \
                0.8;</td></tr>
-<tr><td class="num" id="LN472">472</td><td class="line">        Cb = datasd[1] * \
                0.8;</td></tr>
-<tr><td class="num" id="LN473">473</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN474">474</td><td class="line">        <span \
                class='keyword'>if</span> (Cr &gt; 7)</td></tr>
-<tr><td class="num" id="LN475">475</td><td class="line">            Cr = \
                7;</td></tr>
-<tr><td class="num" id="LN476">476</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN477">477</td><td class="line">        <span \
                class='keyword'>if</span> (Cb &gt; 7)</td></tr>
-<tr><td class="num" id="LN478">478</td><td class="line">            Cb = \
                7;</td></tr>
-<tr><td class="num" id="LN479">479</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN480">480</td><td class="line">        L  = floorf(L  * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN481">481</td><td class="line">        Cb = floorf(Cb * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN482">482</td><td class="line">        Cr = floorf(Cr * \
                100) / 100;</td></tr>
-<tr><td class="num" id="LN483">483</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN484">484</td><td class="line">        <span \
                class='keyword'>if</span> ( L &gt; 9 )</td></tr>
-<tr><td class="num" id="LN485">485</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.8;</td></tr>
-<tr><td class="num" id="LN486">486</td><td class="line">        <span \
                class='keyword'>else</span> <span class='keyword'>if</span> ( L &gt; \
                3)</td></tr>
-<tr><td class="num" id="LN487">487</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.7;</td></tr>
-<tr><td class="num" id="LN488">488</td><td class="line">        <span \
                class='keyword'>else</span></td></tr>
-<tr><td class="num" id="LN489">489</td><td class="line">            LSoft = CrSoft = \
                CbSoft = 0.6;</td></tr>
-<tr><td class="num" id="LN490">490</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN492">492</td><td class="line">    d-&gt;prm.thresholds[0] \
                = L;</td></tr>
-<tr><td class="num" id="LN493">493</td><td class="line">    d-&gt;prm.thresholds[1] \
                = Cb;</td></tr>
-<tr><td class="num" id="LN494">494</td><td class="line">    d-&gt;prm.thresholds[2] \
                = Cr;</td></tr>
-<tr><td class="num" id="LN495">495</td><td class="line">    d-&gt;prm.softness[0]   \
                = LSoft;</td></tr>
-<tr><td class="num" id="LN496">496</td><td class="line">    d-&gt;prm.softness[1]   \
                = CbSoft;</td></tr>
-<tr><td class="num" id="LN497">497</td><td class="line">    d-&gt;prm.softness[2]   \
                = CrSoft;</td></tr>
-<tr><td class="num" id="LN498">498</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN499">499</td><td class="line">    <span \
class='macro'>qCDebug(DIGIKAM_DIMG_LOG)<span class='expansion'>for (bool \
qt_category_enabled = DIGIKAM_DIMG_LOG().isDebugEnabled<br>(); qt_category_enabled; \
qt_category_enabled = false) \
QMessageLogger<br>("/mnt/data/GIT/6.x/core/libs/dimg/filters/nr/nrestimate.cpp"<br>, \
499, __PRETTY_FUNCTION__, \
DIGIKAM_DIMG_LOG().categoryName()<br>).debug()</span></span> &lt;&lt; <span \
                class='string_literal'>"All is completed"</span>;</td></tr>
-<tr><td class="num" id="LN500">500</td><td class="line">    \
                postProgress(90);</td></tr>
-<tr><td class="num" id="LN501">501</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN502">502</td><td class="line">    <span \
class='comment'>//-- releasing matrices and closing files \
----------------------------------------------------------------------</span></td></tr>
                
-<tr><td class="num" id="LN503">503</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN504">504</td><td class="line">    \
                cvReleaseMat(&amp;sd);</td></tr>
-<tr><td class="num" id="LN505">505</td><td class="line">    \
                cvReleaseMat(&amp;stdStore);</td></tr>
-<tr><td class="num" id="LN506">506</td><td class="line">    \
                cvReleaseMat(&amp;meanStore);</td></tr>
-<tr><td class="num" id="LN507">507</td><td class="line">    \
                cvReleaseMat(&amp;points);</td></tr>
-<tr><td class="num" id="LN508">508</td><td class="line">    \
                cvReleaseMat(&amp;clusters);</td></tr>
-<tr><td class="num" id="LN509">509</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN510">510</td><td class="line">    <span \
                class='keyword'>for</span> (uint i = 0 ; i &lt; 3 ; i++)</td></tr>
-<tr><td class="num" id="LN511">511</td><td class="line">    {</td></tr>
-<tr><td class="num" id="LN512">512</td><td class="line">        <span \
                class='keyword'>delete</span> [] d-&gt;fimg[i];</td></tr>
-<tr><td class="num" id="LN513">513</td><td class="line">    }</td></tr>
-<tr><td class="num" id="LN514">514</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN515">515</td><td class="line">    \
                postProgress(100);</td></tr>
-<tr><td class="num" id="LN516">516</td><td class="line">}</td></tr>
-<tr><td class="num" id="LN517">517</td><td class="line"> </td></tr>
-<tr><td class="num" id="LN518">518</td><td class="line">} <span class='comment'>// \
                namespace Digikam</span></td></tr>
-</table></body></html>
diff --git a/static/reports/clang/master/report-1cd406.html \
b/static/reports/clang/master/report-c038b4.html similarity index 100%
rename from static/reports/clang/master/report-1cd406.html
rename to static/reports/clang/master/report-c038b4.html
diff --git a/static/reports/clang/master/report-6a4a2e.html \
b/static/reports/clang/master/report-ccbb3a.html similarity index 100%
rename from static/reports/clang/master/report-6a4a2e.html
rename to static/reports/clang/master/report-ccbb3a.html
diff --git a/static/reports/clang/master/report-9d5bb8.html \
b/static/reports/clang/master/report-d19535.html similarity index 100%
rename from static/reports/clang/master/report-9d5bb8.html
rename to static/reports/clang/master/report-d19535.html
diff --git a/static/reports/clang/master/report-e7b0ce.html \
b/static/reports/clang/master/report-d38fb4.html similarity index 100%
rename from static/reports/clang/master/report-e7b0ce.html
rename to static/reports/clang/master/report-d38fb4.html
diff --git a/static/reports/clang/master/report-72348a.html \
b/static/reports/clang/master/report-d3cb10.html similarity index 100%
rename from static/reports/clang/master/report-72348a.html
rename to static/reports/clang/master/report-d3cb10.html
diff --git a/static/reports/clang/master/report-ae50cb.html \
b/static/reports/clang/master/report-d951fc.html similarity index 100%
rename from static/reports/clang/master/report-ae50cb.html
rename to static/reports/clang/master/report-d951fc.html
diff --git a/static/reports/clang/master/report-053c33.html \
b/static/reports/clang/master/report-de6370.html similarity index 100%
rename from static/reports/clang/master/report-053c33.html
rename to static/reports/clang/master/report-de6370.html
diff --git a/static/reports/clang/master/report-ff7422.html \
b/static/reports/clang/master/report-e4dc2c.html similarity index 100%
rename from static/reports/clang/master/report-ff7422.html
rename to static/reports/clang/master/report-e4dc2c.html
diff --git a/static/reports/clang/master/report-982035.html \
b/static/reports/clang/master/report-e675ee.html similarity index 100%
rename from static/reports/clang/master/report-982035.html
rename to static/reports/clang/master/report-e675ee.html
diff --git a/static/reports/clang/master/report-8c8dc0.html \
b/static/reports/clang/master/report-e8237c.html similarity index 100%
rename from static/reports/clang/master/report-8c8dc0.html
rename to static/reports/clang/master/report-e8237c.html
diff --git a/static/reports/clang/master/report-4fadec.html \
b/static/reports/clang/master/report-f3b4f1.html similarity index 100%
rename from static/reports/clang/master/report-4fadec.html
rename to static/reports/clang/master/report-f3b4f1.html
diff --git a/static/reports/clang/master/report-b8d55b.html \
b/static/reports/clang/master/report-ff0b3f.html similarity index 100%
rename from static/reports/clang/master/report-b8d55b.html
rename to static/reports/clang/master/report-ff0b3f.html
diff --git a/static/reports/clang/master/report-aa88fd.html \
b/static/reports/clang/master/report-ff8fab.html similarity index 100%
rename from static/reports/clang/master/report-aa88fd.html
rename to static/reports/clang/master/report-ff8fab.html


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic