This file is indexed.

/usr/share/doc/gmt/html/man/grdhisteq.html is in gmt-doc 4.5.11-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
<!-- Creator     : groff version 1.19.2 -->
<!-- CreationDate: Tue Nov  5 09:45:24 2013 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="generator" content="groff -Thtml, see www.gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="Content-Style" content="text/css">
<style type="text/css">
       p     { margin-top: 0; margin-bottom: 0; }
       pre   { margin-top: 0; margin-bottom: 0; }
       table { margin-top: 0; margin-bottom: 0; }
</style>
<title>GRDHISTEQ</title>

</head>
<body bgcolor="#ffffff">

<h1 align=center>GRDHISTEQ</h1>

<a href="#NAME">NAME</a><br>
<a href="#SYNOPSIS">SYNOPSIS</a><br>
<a href="#DESCRIPTION">DESCRIPTION</a><br>
<a href="#OPTIONS">OPTIONS</a><br>
<a href="#GRID FILE FORMATS">GRID FILE FORMATS</a><br>
<a href="#EXAMPLES">EXAMPLES</a><br>
<a href="#RESTRICTIONS">RESTRICTIONS</a><br>
<a href="#SEE ALSO">SEE ALSO</a><br>

<hr>


<a name="NAME"></a>
<h2>NAME</h2>


<p style="margin-left:11%; margin-top: 1em">grdhisteq
&minus; Histogram equalization for grid files</p>

<a name="SYNOPSIS"></a>
<h2>SYNOPSIS</h2>



<p style="margin-left:11%; margin-top: 1em"><b>grdhisteq</b>
<i>in_grdfile</i> [ <b>&minus;G</b><i>out_grdfile</i> ] [
<b>&minus;C</b><i>n_cells</i> ] [ <b>&minus;D</b> ] [
<b>&minus;N</b>[<i>norm</i>] ] [ <b>&minus;Q</b> ] [
<b>&minus;V</b> ]</p>

<a name="DESCRIPTION"></a>
<h2>DESCRIPTION</h2>



<p style="margin-left:11%; margin-top: 1em"><b>grdhisteq</b>
allows the user to find the data values which divide a given
grid file into patches of equal area. One common use of
<b>grdhisteq</b> is in a kind of histogram equalization of
an image. In this application, the user might have a grid of
flat topography with a mountain in the middle. Ordinary gray
shading of this file (using grdimage/grdview) with a linear
mapping from topography to graytone will result in most of
the image being very dark gray, with the mountain being
almost white. One could use <b>grdhisteq</b> to write to
stdout an ASCII list of those data values which divide the
range of the data into <i>n_cells</i> segments, each of
which has an equal area in the image. Using <b>awk</b> or
<b><A HREF="makecpt.html">makecpt</A></b> one can take this output and build a cpt
file; using the cptfile with grdimage will result in an
image with all levels of gray occurring equally.
Alternatively, see <b><A HREF="grd2cpt.html">grd2cpt</A></b>.</p>

<p style="margin-left:11%; margin-top: 1em">The second
common use of <b>grdhisteq</b> is in writing a grid with
statistics based on some kind of cumulative distribution
function. In this application, the output has relative highs
and lows in the same (x,y) locations as the input file, but
the values are changed to reflect their place in some
cumulative distribution. One example would be to find the
lowest 10% of the data: Take a grid, run <b>grdhisteq</b>
and make a grid using <i>n_cells</i> = 10, and then contour
the result to trace the 1 contour. This will enclose the
lowest 10% of the data, regardless of their original values.
Another example is in equalizing the output of
<b><A HREF="grdgradient.html">grdgradient</A></b>. For shading purposes it is desired that
the data have a smooth distribution, such as a gaussian. If
you run <b>grdhisteq</b> on output from <b><A HREF="grdgradient.html">grdgradient</A></b>
and make a grid file output with the Gaussian option, you
will have a grid whose values are distributed according to a
gaussian distribution with zero mean and unit variance. The
locations of these values will correspond to the locations
of the input; that is, the most negative output value will
be in the (x,y) location of the most negative input value,
and so on. <i><br>
in_grdfile</i></p>

<p style="margin-left:22%;">2-D binary grid file to be
equalized. (See GRID FILE FORMATS below).</p>

<a name="OPTIONS"></a>
<h2>OPTIONS</h2>


<p style="margin-left:11%; margin-top: 1em">No space
between the option flag and the associated arguments.</p>

<table width="100%" border=0 rules="none" frame="void"
       cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;C</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Sets how many cells
(or divisions) of data range to make.</p></td>
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;D</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Dump level
information to standard output.</p></td>
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;G</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Name of output 2-D
grid file. Used with <b>&minus;N</b> only. (See GRID FILE
FORMATS below).</p></td>
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;N</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Gaussian output.
Use with <b>&minus;G</b> to make an output grid with
standard normal scores. Append <i>norm</i> to force the
scores to fall in the &lt;-1,+1&gt; range [Default is
standard normal scores].</p></td>
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;Q</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Use quadratic
intensity scaling. [Default is linear].</p></td>
<tr valign="top" align="left">
<td width="11%"></td>
<td width="3%">



<p style="margin-top: 1em" valign="top"><b>&minus;V</b></p> </td>
<td width="8%"></td>
<td width="78%">


<p style="margin-top: 1em" valign="top">Selects verbose
mode, which will send progress reports to stderr [Default
runs &quot;silently&quot;].</p></td>
</table>

<a name="GRID FILE FORMATS"></a>
<h2>GRID FILE FORMATS</h2>


<p style="margin-left:11%; margin-top: 1em">By default
<b><A HREF="GMT.html">GMT</A></b> writes out grid as single precision floats in a
COARDS-complaint netCDF file format. However, <b><A HREF="GMT.html">GMT</A></b> is
able to produce grid files in many other commonly used grid
file formats and also facilitates so called
&quot;packing&quot; of grids, writing out floating point
data as 2- or 4-byte integers. To specify the precision,
scale and offset, the user should add the suffix
<b>=</b><i>id</i>[<b>/</b><i>scale</i><b>/</b><i>offset</i>[<b>/</b><i>nan</i>]],
where <i>id</i> is a two-letter identifier of the grid type
and precision, and <i>scale</i> and <i>offset</i> are
optional scale factor and offset to be applied to all grid
values, and <i>nan</i> is the value used to indicate missing
data. When reading grids, the format is generally
automatically recognized. If not, the same suffix can be
added to input grid file names. See <b><A HREF="grdreformat.html">grdreformat</A></b>(1)
and Section 4.17 of the GMT Technical Reference and Cookbook
for more information.</p>

<p style="margin-left:11%; margin-top: 1em">When reading a
netCDF file that contains multiple grids, <b><A HREF="GMT.html">GMT</A></b> will
read, by default, the first 2-dimensional grid that can find
in that file. To coax <b><A HREF="GMT.html">GMT</A></b> into reading another
multi-dimensional variable in the grid file, append
<b>?</b><i>varname</i> to the file name, where
<i>varname</i> is the name of the variable. Note that you
may need to escape the special meaning of <b>?</b> in your
shell program by putting a backslash in front of it, or by
placing the filename and suffix between quotes or double
quotes. The <b>?</b><i>varname</i> suffix can also be used
for output grids to specify a variable name different from
the default: &quot;z&quot;. See <b><A HREF="grdreformat.html">grdreformat</A></b>(1) and
Section 4.18 of the GMT Technical Reference and Cookbook for
more information, particularly on how to read splices of 3-,
4-, or 5-dimensional grids.</p>

<a name="EXAMPLES"></a>
<h2>EXAMPLES</h2>


<p style="margin-left:11%; margin-top: 1em">To find the
height intervals that divide the file heights.grd into 16
divisions of equal area:</p>


<p style="margin-left:11%; margin-top: 1em"><b>grdhisteq</b>
heights.grd <b>&minus;C</b> 16 <b>&minus;D</b> &gt;
levels.d</p>

<p style="margin-left:11%; margin-top: 1em">To make the
poorly distributed intensities in the file raw_intens.grd
suitable for use with <b><A HREF="grdimage.html">grdimage</A></b> or <b><A HREF="grdview.html">grdview</A></b>,
run</p>


<p style="margin-left:11%; margin-top: 1em"><b>grdhisteq</b>
raw_intens.grd <b>&minus;G</b> smooth_intens.grd <b>&minus;N
&minus;V</b></p>

<a name="RESTRICTIONS"></a>
<h2>RESTRICTIONS</h2>


<p style="margin-left:11%; margin-top: 1em">If you use
<b>grdhisteq</b> to make a gaussian output for gradient
shading in <b><A HREF="grdimage.html">grdimage</A></b> or <b><A HREF="grdview.html">grdview</A></b>, you should be
aware of the following: the output will be in the range [-x,
x], where x is based on the number of data in the input grid
(nx * ny) and the cumulative gaussian distribution function
F(x). That is, let N = nx * ny. Then x will be adjusted so
that F(x) = (N - 1 + 0.5)/N. Since about 68% of the values
from a standard normal distribution fall within +/- 1, this
will be true of the output grid. But if N is very large, it
is possible for x to be greater than 4. Therefore, with the
<b><A HREF="grdimage.html">grdimage</A></b> program clipping gradients to the range [-1,
1], you will get correct shading of 68% of your data, while
16% of them will be clipped to -1 and 16% of them clipped to
+1. If this makes too much of the image too light or too
dark, you should take the output of <b>grdhisteq</b> and
rescale it using <b><A HREF="grdmath.html">grdmath</A></b> and multiplying by something
less than 1.0, to shrink the range of the values, thus
bringing more than 68% of the image into the range [-1, 1].
Alternatively, supply a normalization factor with
<b>&minus;N</b>.</p>

<a name="SEE ALSO"></a>
<h2>SEE ALSO</h2>



<p style="margin-left:11%; margin-top: 1em"><i><A HREF="gmtdefaults.html">gmtdefaults</A></i>(1),
<i><A HREF="GMT.html">GMT</A></i>(1), <i><A HREF="grd2cpt.html">grd2cpt</A></i>(1), <i><A HREF="grdgradient.html">grdgradient</A></i>(1),
<i><A HREF="grdimage.html">grdimage</A></i>(1), <i><A HREF="grdmath.html">grdmath</A></i>(1), <i><A HREF="grdview.html">grdview</A></i>(1),
<i><A HREF="makecpt.html">makecpt</A></i>(1)</p>
<hr>
</body>
</html>