Skip to content
Open
Show file tree
Hide file tree
Changes from 31 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
2970091
DEV: Moved mathops.py and test_img_proc from skxray to vttools
Apr 8, 2015
af219e2
DEV: Reduced the included funcs to only arith funcs specific to VisTr…
Apr 9, 2015
221fb0d
DEV: Added __init__ to vttools tests folder. Can now access tests
Apr 10, 2015
d8c978a
TST: Img arith tool test. Changed tool location and refs to srch vttool
Apr 10, 2015
ff10b4a
DEV: Mod to arith_custom docs. Removed additional operators.
Apr 13, 2015
9be03ce
DEV: Changed data inputs to x1 and x2. Completed docstrings for funcs.
Apr 13, 2015
4cf2f9f
DEV: Renamed functions so they're simpler and more straight forward.
Apr 13, 2015
5b2e3a2
DEV: Transferred test funcs for arith tools for VT from skxray.
Apr 13, 2015
adf036f
DEV: Updated functions in image_proc.py after transfer from skxray
Apr 14, 2015
1b7a073
TST: Updated basic arith test function after img_proc name changes
Apr 14, 2015
bbed6dc
TST: Updated test for arith_expression after func name change in vttools
Apr 14, 2015
9822c1f
DOC: Updated input params docstrings, simplifying them.
Apr 14, 2015
fcc8d22
TST: Tested and verified img_proc tst funcs using nose, coverage.
Apr 14, 2015
bff1406
DEV: Moved mathops.py and test_img_proc from skxray to vttools
Apr 8, 2015
a699039
DEV: Reduced the included funcs to only arith funcs specific to VisTr…
Apr 9, 2015
cf06549
DEV: Added __init__ to vttools tests folder. Can now access tests
Apr 10, 2015
102feb3
TST: Img arith tool test. Changed tool location and refs to srch vttool
Apr 10, 2015
98c3f36
DEV: Mod to arith_custom docs. Removed additional operators.
Apr 13, 2015
5545161
DEV: Changed data inputs to x1 and x2. Completed docstrings for funcs.
Apr 13, 2015
f4d9a17
DEV: Renamed functions so they're simpler and more straight forward.
Apr 13, 2015
91a4547
DEV: Transferred test funcs for arith tools for VT from skxray.
Apr 13, 2015
72f0463
DEV: Updated functions in image_proc.py after transfer from skxray
Apr 14, 2015
d51e33f
TST: Updated basic arith test function after img_proc name changes
Apr 14, 2015
bef01aa
TST: Updated test for arith_expression after func name change in vttools
Apr 14, 2015
ffa4cd2
DOC: Updated input params docstrings, simplifying them.
Apr 14, 2015
69e81a0
TST: Tested and verified img_proc tst funcs using nose, coverage.
Apr 14, 2015
25fc89c
DOC, MNT: Edits to be consistent with np and pep8
ericdill Apr 15, 2015
08c0aab
Merge branch 'master' of github.com:Nikea/VTTools into img_proc_math
Jun 15, 2015
bdbe90d
Merge remote-tracking branch 'dill/img_proc_math' into img_proc_math
Jun 15, 2015
062059f
DEV: Updated init.py to properly include all img proc arithmetic funcs
Jun 21, 2015
ef51305
DEV: Changed test import statement to reflect img_proc to arithmetic …
Jun 21, 2015
03eaf66
FIX: Removed HTML folder which was inadvertently added at some point.
Jun 22, 2015
4007ce2
DOC: Updated and corrected doc for arith-expr referencing lmfit.asteval
Jun 23, 2015
f67a3bb
DOC: Added TODO that docs for logical func need to be updated after s…
Jun 23, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,6 @@ docs/_build/

# coverage
cover/

# generated by various tools
html/
48 changes: 48 additions & 0 deletions doc/resource/user-guide/image.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
Image Operations in VisTrails
-----------------------------

"arithmetic" VisTrails module
=============================
The VisTrails module `arithmetic` enables basic arithmetic for image processing
and data analysis. The function is capable of applying the basic arithmetic
operations (addition, subtraction, multiplication and division) to two data set
arrays, two constants, or an array and a constant.

**Addition.** The addition of EITHER two images or volume data sets, OR an
image/data set and a value. This function is typically used for offset purposes,
or basic recombination of several isolated materials or phases into a single
segmented volume.

**Subtraction.** Enables the subtraction of EITHER one image or volume data set
from another, OR reduction of all values in an image/data set by a set value.
This function is typically used for offset purposes, or basic isolation of
objects or materials/phases in a data set.

**Multiplication.** Enables the multiplication of input 1 (x1) by input 2 (x2).
The inputs can be of any valid numpy data type (e.g. an image or volume data a
fixed, constant, value). This function is typically used for offset purposes
(rescaling), or for assigning values in the generation of a labelfield identifying
objects or materials/phases in a data set.

**Division.** Enables the division of input 1 (x1, numerator) by input 2 (x2,
denominator). The inputs can be of any valid numpy data type (e.g. an image or
volume data a fixed, constant, value). Basic tests are included in the division
function which test for, and ensure that division by zero does not occur. This
function is typically used for offset purposes (rescaling, normalization).

"arithmetic_expression" VisTrails module
========================================
The VisTrails module `arithmetic_expression` enables the use of custom
expressions to evaluate up to 8 input variables, named A-H. This function
enables more complex arithmetic to be carried out on 2 or more (current limit
is 8) arrays or constants. The arithmetic expression is defined by the user, as
a string, and after assignment of inputs A through H the string is parsed into
the appropriate python expression and executed. Note that inputs C through H
are optional and need only be defined when desired or required.

"logical" VisTrails module
==========================
The VisTrails module `logical` enables the computation of the basic logical
operations oft used in image processing of two image or volume data sets. This
function can be used for data comparison, material isolation, noise removal,
or mask application/generation.
48 changes: 48 additions & 0 deletions html/activity.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>GitStats - VTTools</title>
<link rel="stylesheet" href="gitstats.css" type="text/css" />
<meta name="generator" content="GitStats a5a9b09" />
<script type="text/javascript" src="sortable.js"></script>
</head>
<body>
<h1>Activity</h1>
<div class="nav">
<ul>
<li><a href="index.html">General</a></li>
<li><a href="activity.html">Activity</a></li>
<li><a href="authors.html">Authors</a></li>
<li><a href="files.html">Files</a></li>
<li><a href="lines.html">Lines</a></li>
<li><a href="tags.html">Tags</a></li>
</ul>
</div>

<h2><a href="#weekly_activity" name="weekly_activity">Weekly activity</a></h2>

<p>Last 32 weeks</p><table class="noborders"><tr><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">17<div style="display: block; background-color: red; width: 20px; height: 130px"></div></td><td style="text-align: center; vertical-align: bottom">26<div style="display: block; background-color: red; width: 20px; height: 200px"></div></td><td style="text-align: center; vertical-align: bottom">19<div style="display: block; background-color: red; width: 20px; height: 146px"></div></td><td style="text-align: center; vertical-align: bottom">3<div style="display: block; background-color: red; width: 20px; height: 23px"></div></td><td style="text-align: center; vertical-align: bottom">4<div style="display: block; background-color: red; width: 20px; height: 30px"></div></td><td style="text-align: center; vertical-align: bottom">17<div style="display: block; background-color: red; width: 20px; height: 130px"></div></td><td style="text-align: center; vertical-align: bottom">25<div style="display: block; background-color: red; width: 20px; height: 192px"></div></td><td style="text-align: center; vertical-align: bottom">6<div style="display: block; background-color: red; width: 20px; height: 46px"></div></td><td style="text-align: center; vertical-align: bottom">5<div style="display: block; background-color: red; width: 20px; height: 38px"></div></td><td style="text-align: center; vertical-align: bottom">18<div style="display: block; background-color: red; width: 20px; height: 138px"></div></td><td style="text-align: center; vertical-align: bottom">2<div style="display: block; background-color: red; width: 20px; height: 15px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">7<div style="display: block; background-color: red; width: 20px; height: 53px"></div></td><td style="text-align: center; vertical-align: bottom">4<div style="display: block; background-color: red; width: 20px; height: 30px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td><td style="text-align: center; vertical-align: bottom">0<div style="display: block; background-color: red; width: 20px; height: 1px"></div></td></tr><tr><td>32</td><td>31</td><td>30</td><td>29</td><td>28</td><td>27</td><td>26</td><td>25</td><td>24</td><td>23</td><td>22</td><td>21</td><td>20</td><td>19</td><td>18</td><td>17</td><td>16</td><td>15</td><td>14</td><td>13</td><td>12</td><td>11</td><td>10</td><td>9</td><td>8</td><td>7</td><td>6</td><td>5</td><td>4</td><td>3</td><td>2</td><td>1</td></tr></table>
<h2><a href="#hour_of_day" name="hour_of_day">Hour of Day</a></h2>

<table><tr><th>Hour</th><th>0</th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th><th>18</th><th>19</th><th>20</th><th>21</th><th>22</th><th>23</th></tr>
<tr><th>Commits</th><td style="background-color: rgb(134, 0, 0)">1</td><td>0</td><td>0</td><td>0</td><td>0</td><td style="background-color: rgb(194, 0, 0)">9</td><td style="background-color: rgb(157, 0, 0)">4</td><td>0</td><td style="background-color: rgb(134, 0, 0)">1</td><td style="background-color: rgb(172, 0, 0)">6</td><td style="background-color: rgb(164, 0, 0)">5</td><td style="background-color: rgb(255, 0, 0)">17</td><td style="background-color: rgb(217, 0, 0)">12</td><td style="background-color: rgb(217, 0, 0)">12</td><td style="background-color: rgb(202, 0, 0)">10</td><td style="background-color: rgb(239, 0, 0)">15</td><td style="background-color: rgb(194, 0, 0)">9</td><td style="background-color: rgb(187, 0, 0)">8</td><td style="background-color: rgb(142, 0, 0)">2</td><td style="background-color: rgb(194, 0, 0)">9</td><td style="background-color: rgb(187, 0, 0)">8</td><td style="background-color: rgb(172, 0, 0)">6</td><td style="background-color: rgb(239, 0, 0)">15</td><td style="background-color: rgb(157, 0, 0)">4</td></tr>
<tr><th>%</th><td style="background-color: rgb(134, 0, 0)">0.65</td><td>0.00</td><td>0.00</td><td>0.00</td><td>0.00</td><td style="background-color: rgb(194, 0, 0)">5.88</td><td style="background-color: rgb(157, 0, 0)">2.61</td><td>0.00</td><td style="background-color: rgb(134, 0, 0)">0.65</td><td style="background-color: rgb(172, 0, 0)">3.92</td><td style="background-color: rgb(164, 0, 0)">3.27</td><td style="background-color: rgb(255, 0, 0)">11.11</td><td style="background-color: rgb(217, 0, 0)">7.84</td><td style="background-color: rgb(217, 0, 0)">7.84</td><td style="background-color: rgb(202, 0, 0)">6.54</td><td style="background-color: rgb(239, 0, 0)">9.80</td><td style="background-color: rgb(194, 0, 0)">5.88</td><td style="background-color: rgb(187, 0, 0)">5.23</td><td style="background-color: rgb(142, 0, 0)">1.31</td><td style="background-color: rgb(194, 0, 0)">5.88</td><td style="background-color: rgb(187, 0, 0)">5.23</td><td style="background-color: rgb(172, 0, 0)">3.92</td><td style="background-color: rgb(239, 0, 0)">9.80</td><td style="background-color: rgb(157, 0, 0)">2.61</td></tr></table><img src="hour_of_day.png" alt="Hour of Day" />
<h2><a href="#day_of_week" name="day_of_week">Day of Week</a></h2>

<div class="vtable"><table><tr><th>Day</th><th>Total (%)</th></tr><tr><th>Mon</th><td>24 (15.69%)</td></tr><tr><th>Tue</th><td>30 (19.61%)</td></tr><tr><th>Wed</th><td>25 (16.34%)</td></tr><tr><th>Thu</th><td>27 (17.65%)</td></tr><tr><th>Fri</th><td>31 (20.26%)</td></tr><tr><th>Sat</th><td>9 (5.88%)</td></tr><tr><th>Sun</th><td>7 (4.58%)</td></tr></table></div><img src="day_of_week.png" alt="Day of Week" />
<h2><a href="#hour_of_week" name="hour_of_week">Hour of Week</a></h2>

<table><tr><th>Weekday</th><th>0</th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th><th>18</th><th>19</th><th>20</th><th>21</th><th>22</th><th>23</th></tr><tr><th>Mon</th><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(196, 0, 0)">6</td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(161, 0, 0)">3</td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(161, 0, 0)">3</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(150, 0, 0)">2</td><td></td></tr><tr><th>Tue</th><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(231, 0, 0)">9</td><td style="background-color: rgb(173, 0, 0)">4</td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td style="background-color: rgb(185, 0, 0)">5</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(161, 0, 0)">3</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td></tr><tr><th>Wed</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td></td><td style="background-color: rgb(173, 0, 0)">4</td><td style="background-color: rgb(150, 0, 0)">2</td><td></td><td style="background-color: rgb(255, 0, 0)">11</td><td></td></tr><tr><th>Thu</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(161, 0, 0)">3</td><td></td><td style="background-color: rgb(173, 0, 0)">4</td><td style="background-color: rgb(185, 0, 0)">5</td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(161, 0, 0)">3</td><td style="background-color: rgb(150, 0, 0)">2</td><td></td></tr><tr><th>Fri</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(196, 0, 0)">6</td><td style="background-color: rgb(196, 0, 0)">6</td><td style="background-color: rgb(161, 0, 0)">3</td><td style="background-color: rgb(196, 0, 0)">6</td><td style="background-color: rgb(173, 0, 0)">4</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td></tr><tr><th>Sat</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(161, 0, 0)">3</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td style="background-color: rgb(150, 0, 0)">2</td></tr><tr><th>Sun</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(138, 0, 0)">1</td><td></td><td></td><td></td><td></td><td style="background-color: rgb(150, 0, 0)">2</td><td style="background-color: rgb(150, 0, 0)">2</td><td></td><td></td><td></td></tr></table>
<h2><a href="#month_of_year" name="month_of_year">Month of Year</a></h2>

<div class="vtable"><table><tr><th>Month</th><th>Commits (%)</th></tr><tr><td>1</td><td>0 (0.00 %)</td></tr><tr><td>2</td><td>0 (0.00 %)</td></tr><tr><td>3</td><td>0 (0.00 %)</td></tr><tr><td>4</td><td>0 (0.00 %)</td></tr><tr><td>5</td><td>0 (0.00 %)</td></tr><tr><td>6</td><td>0 (0.00 %)</td></tr><tr><td>7</td><td>0 (0.00 %)</td></tr><tr><td>8</td><td>0 (0.00 %)</td></tr><tr><td>9</td><td>65 (42.48 %)</td></tr><tr><td>10</td><td>52 (33.99 %)</td></tr><tr><td>11</td><td>25 (16.34 %)</td></tr><tr><td>12</td><td>11 (7.19 %)</td></tr></table></div><img src="month_of_year.png" alt="Month of Year" />
<h2><a href="#commits_by_year/month" name="commits_by_year/month">Commits by year/month</a></h2>

<div class="vtable"><table><tr><th>Month</th><th>Commits</th><th>Lines added</th><th>Lines removed</th></tr><tr><td>2014-12</td><td>11</td><td>133</td><td>51</td></tr><tr><td>2014-11</td><td>25</td><td>1024</td><td>488</td></tr><tr><td>2014-10</td><td>52</td><td>671</td><td>129</td></tr><tr><td>2014-09</td><td>65</td><td>2533</td><td>313</td></tr></table></div><img src="commits_by_year_month.png" alt="Commits by year/month" />
<h2><a href="#commits_by_year" name="commits_by_year">Commits by Year</a></h2>

<div class="vtable"><table><tr><th>Year</th><th>Commits (% of all)</th><th>Lines added</th><th>Lines removed</th></tr><tr><td>2014</td><td>153 (100.00%)</td><td>4361</td><td>981</td></tr></table></div><img src="commits_by_year.png" alt="Commits by Year" />
<h2><a href="#commits_by_timezone" name="commits_by_timezone">Commits by Timezone</a></h2>

<table><tr><th>Timezone</th><th>Commits</th><tr><th>-0500</th><td style="background-color: rgb(166, 0, 0)">36</td></tr><tr><th>-0400</th><td style="background-color: rgb(255, 0, 0)">117</td></tr></tr></table></body></html>
Binary file added html/arrow-down.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added html/arrow-none.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added html/arrow-up.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading