projects
/
master-thesis.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use float32 images instead of byte to improve the edge detection precision.
[master-thesis.git]
/
Parasitemia
/
Parasitemia
/
Ellipse.fs
diff --git
a/Parasitemia/Parasitemia/Ellipse.fs
b/Parasitemia/Parasitemia/Ellipse.fs
index
33333bf
..
73771be
100644
(file)
--- a/
Parasitemia/Parasitemia/Ellipse.fs
+++ b/
Parasitemia/Parasitemia/Ellipse.fs
@@
-204,11
+204,11
@@
let private areVectorsValid (p1x: float) (p1y: float) (p2x: float) (p2y: float)
let find (edges: Matrix<byte>)
let find (edges: Matrix<byte>)
- (x
Dir
: Image<Gray, float>)
- (y
Dir
: Image<Gray, float>)
+ (x
Gradient
: Image<Gray, float>)
+ (y
Gradient
: Image<Gray, float>)
(config: Config) : MatchingEllipses =
(config: Config) : MatchingEllipses =
- let r1, r2 = config.
Parameters.scale * config.RBCMin, config.Parameters.scale * config.RBCMax // FIXME: scale factor should be applied in Config!?
+ let r1, r2 = config.
RBCMinRadius, config.RBCMaxRadius
let windowSize = roundInt (config.Parameters.factorWindowSize * r2)
let factorNbPick = config.Parameters.factorNbPick
let windowSize = roundInt (config.Parameters.factorWindowSize * r2)
let factorNbPick = config.Parameters.factorNbPick
@@
-227,8
+227,8
@@
let find (edges: Matrix<byte>)
let currentElements = List<(int * int)>()
let edgesData = edges.Data
let currentElements = List<(int * int)>()
let edgesData = edges.Data
- let xDirData = x
Dir
.Data
- let yDirData = y
Dir
.Data
+ let xDirData = x
Gradient
.Data
+ let yDirData = y
Gradient
.Data
let rng = Random(42)
let rng = Random(42)