Wow, very simple. But why wouldn't it work the way I was trying? (Using an if/else block)
Difficult to say without in depth analysis. Guessing from a first peek: You got the blocks mixed up. The grade can only be determined when all results are summed up, i.e. in the END section.
And, you're testing too many conditions. Once the average IS NOT greater than or equal, it is automatically less, and the test can go.
Quote:
What does the 'R' represent in the second arg for the function?
Residual of former test - can go away.
How about
Not sure if the algorithm to determine the TOTAL possible is reliable in other contexts - it takes the average per assignment of the participants thus ruling out students have missed an exam.
I want to find the top N entries for a certain field based on the values of another field.
For example if N=3, we want the 3 best values for each entry:
Entry1 ||| 100
Entry1 ||| 95
Entry1 ||| 30
Entry1 ||| 80
Entry1 ||| 50
Entry2 ||| 40
Entry2 ||| 20
Entry2 ||| 10
Entry2 ||| 50... (1 Reply)
So, I need to do some summing. I have an Apache log file with the following as a typical line:
127.0.0.1 - frank "GET /apache_pb.gif HTTP/1.0" 200 2326
Now, what I'd like to do is a per-minute sum. So, I can have awk tell me the individual minutes, preserving the dates(since this is a... (7 Replies)
Hi
i am new to scripting. i have a file file.dat with content as :
CONTENT_STORAGE PERCENTAGE FLAG:
/storage_01 64% 0
/storage_02 17% 1
I need to update the value of FLAG for a particular CONTENT_STORAGE value
I have written the following code
#!/bin/sh
threshold=20... (1 Reply)
Hi everybody,
I'm trying to replace the $98 field with "T" if the last field (108th) is T
I've tried
awk 'BEGIN{OFS=FS="|"} {if ($108=="T")sub($98,"T"); print}' test.txt
but that doesn't do anything
also tried
awk 'BEGIN{OFS=FS="|"}{ /*T.$/ sub($98,"T")} { print}' test.txt
but... (2 Replies)
I am trying to confirm the counts from another code and tried the below awk, but the syntax is incorrect. Basically, outputting the counts of each condition in $8. Thank you :)
awk '$8==/TYPE=snp/ /TYPE=ins/ /TYPE=del/ {count++} END{print count}'... (6 Replies)
In the tab-delimeted input file below I am trying to use awk to update the value in $2 if TYPE=ins in bold, by adding the value of
HRUN= in italics. In the below since in line 1 TYPE=ins the 117282541 value in $2 has 6 added because that is the value of HRUN=.
Hopefully the awk is a start but I... (2 Replies)
I am trying to output a tab-delimited result that uses the data from a tab-delimited file to combine and subtract specific lines.
If $4 matches in each line then the first matching sequential $6 value is added to $2, unless the value is 1, then the original $2 is used (like in the case of line... (3 Replies)
In the perl below, which does execute, I am having trouble with the else in Rule 3. The digit in f{8} is extracted and used to update f accordinly along with the value in f.
There can be either - * or + before the number that is extracted but the same logic applies, that is if the value is greater... (5 Replies)
In the awk below I am trying to copy the entire contents of $6 there may be multiple values seperated by a ;, to $8, if $8 is . (lines 1 and 3 are examples). If that condition $8 is not . (line2 is an example) then that line is skipped and printed as is. The awk does execute but prints the output... (3 Replies)
Request your help to change the field color based on condition , if it is otherthan 0. using html in unix.
Here is my condition
for(i=1;i<=NF;i++)
{
print "<td> "$i"</td>
}
Please use CODE tags when displaying sample input, output, and code segments. (17 Replies)
Discussion started by: CatchMe
17 Replies
LEARN ABOUT OPENSOLARIS
mlib_imagenormcrosscorrel_fp
mlib_ImageNormCrossCorrel_Fp(3MLIB) mediaLib Library Functions mlib_ImageNormCrossCorrel_Fp(3MLIB)NAME
mlib_ImageNormCrossCorrel_Fp - normalized cross correlation
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>
mlib_status mlib_ImageNormCrossCorrel_Fp(mlib_d64 *correl,
const mlib_image *img1, const mlib_image *img2, const mlib_d64 *mean2,
const mlib_d64 *sdev2);
DESCRIPTION
The mlib_ImageNormCrossCorrel_Fp() function computes the normalized cross-correlation coefficients between a pair of floating-point images,
on a per-channel basis.
It uses the following equations:
w-1 h-1
SUM SUM (d1[x][y][i] * d2[x][y][i])
x=0 y=0
correl[i] = -------------------------------------
s1[i] * s2[i]
d1[x][y][i] = img1[x][y][i] - m1[i]
d2[x][y][i] = img2[x][y][i] - m2[i]
1 w-1 h-1
m1[i] = ----- * SUM SUM img1[x][y][i]
w*h x=0 y=0
1 w-1 h-1
m2[i] = ----- * SUM SUM img2[x][y][i]
w*h x=0 y=0
w-1 h-1
s1[i] = sqrt{ SUM SUM (img1[x][y][i] - m1[i])**2 }
x=0 y=0
w-1 h-1
s2[i] = sqrt{ SUM SUM (img2[x][y][i] - m2[i])**2 }
x=0 y=0
where w and h are the width and height of the images, respectively; m1 and m2 are the mean arrays of the first and second images, respec-
tively; s1 and s2 are the un-normalized standard deviation arrays of the first and second images, respectively.
In usual cases, the normalized cross-correlation coefficient is in the range of [-1.0, 1.0]. In the case of (s1[i] == 0) or (s2[i] == 0),
where a constant image channel is involved, the normalized cross-correlation coefficient is defined as follows:
#define signof(x) ((x > 0) ? 1 : ((x < 0) ? -1 : 0))
if ((s1[i] == 0.) || (s2[i] == 0.)) {
if ((s1[i] == 0.) && (s2[i] == 0.)) {
if (signof(m1[i]) == signof(m2[i]) {
correl[i] = 1.0;
} else {
correl[i] = -1.0;
}
} else {
correl[i] = -1.0;
}
}
The two images must have the same type, the same size, and the same number of channels. They can have 1, 2, 3 or 4 channels. They can be of
type MLIB_FLOAT or MLIB_DOUBLE.
If (mean2 == NULL) or (sdev2 == NULL), then m2 and s2 are calculated in this function according to the formulas shown above. Otherwise,
they are calculated as follows:
m2[i] = mean2[i];
s2[i] = sdev2[i] * sqrt(w*h);
where mean2 and sdev2 can be the output of mlib_ImageMean() and mlib_ImageStdDev(), respectively.
In some cases, the resulting coefficients of this function could be NaN, Inf, or -Inf.
PARAMETERS
The function takes the following arguments:
correl Pointer to normalized cross correlation array on a channel basis. The array must be the size of channels in the images. correl[i]
contains the cross-correlation of channel i.
img1 Pointer to first image.
img2 Pointer to second image.
mean2 Pointer to the mean array of the second image.
sdev2 Pointer to the standard deviation array of the second image.
RETURN VALUES
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Committed |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO mlib_ImageAutoCorrel(3MLIB), mlib_ImageAutoCorrel_Fp(3MLIB), mlib_ImageCrossCorrel(3MLIB), mlib_ImageCrossCorrel_Fp(3MLIB), mlib_ImageNorm-
CrossCorrel(3MLIB), attributes(5)SunOS 5.11 2 Mar 2007 mlib_ImageNormCrossCorrel_Fp(3MLIB)