DrawWing is scientific software for automatic measurements of insects wings. It can be used by beekeepers for discrimination of honeybee subspecies.
Unzip the DrawWing-0.43.zip archive.
If you have any problems with using the software please let me know by sending an email to: rotofils@cyf-kr.edu.pl
DrawWing opens images in following formats: PNG, BMP, JPG, XPM. I prefer PNG because of its very good compression without loss of quality. Here I use JPG images because of their smaller size. If your scanner is saving images only in TIF format you can use tiff2png software for conversion.
Resolution of the image should be at least 2400x2400 dpi. If the information about resolution is not included in the image user needs to provide this information. Without correct information about resolution DrawWing will not function correctly.
The image should contain one or more honeybee forewings. The wings cannot overlap each other. Smaller hind wings at the moment are not detected by DrawWing.
The image needs to be of relatively high quality. When tape is used to fix the wings to glass the quality is usually low. I mount the wings into glass photographic frames and I scan them using Nikon Coolscan 5000 ED scanner equipped with SF-210 slide feeder.

Example image of honeybee Apis mellifera carnica wings.
All forewings detected in the image are cropped out and saved in separate standard wing images with extension .dw.png. In the standard wing images the wings are rotated to standard position. The right wings are flipped horizontally. The standard wing images are saved in the same directory as the source image. The filenames are numbered consecutively and contain information if it is left "L" o right "R" wing. In the example image wing000471.jpg two forewings were found: wing000471_0L.dw.png and wing000471_1R.dw.png.

Standard wing image of left honeybee (A. m. carnica) wing.

Standard wing image of right honeybee (A. m. carnica) wing with vein
junctions numbered.
The wings measurements are displayed in separate window.
C:/wings/wing000471.jpg <-- file name (including path) of analysed image
wing000471_0L.dw.png <-- file name of created standard wing image
#[ 0]: ( 214, 139 ), 4.271, 0.073, 2.761 <-|
#[ 1]: ( 231, 141 ), 5.730, 3.321, 1.071 |
#[ 2]: ( 291, 59 ), 3.708, 5.934, 2.267 |
#[ 3]: ( 280, 114 ), 5.086, 0.018, 2.549 |
#[ 4]: ( 289, 199 ), 3.968, 6.068, 2.257 |
#[ 5]: ( 358, 54 ), 5.903, 2.345, 3.666 |
#[ 6]: ( 405, 26 ), 3.714, 5.872, 1.751 |
#[ 7]: ( 396, 42 ), 5.411, 2.997, 0.874 |
#[ 8]: ( 435, 76 ), 4.096, 6.175, 2.478 | data about vein junctions
#[ 9]: ( 401, 99 ), 5.716, 1.238, 3.391 |
#[ 10]: ( 443, 131 ), 3.641, 5.743, 1.715 |
#[ 11]: ( 447, 171 ), 3.015, 5.305, 1.071 |
#[ 12]: ( 464, 202 ), 6.121, 4.120, 2.105 |
#[ 13]: ( 482, 33 ), 3.568, 1.391, 5.934 |
#[ 14]: ( 511, 62 ), 4.008, 0.316, 2.628 |
#[ 15]: ( 597, 104 ), 4.018, 2.671, 0.180 |
#[ 16]: ( 633, 107 ), 5.827, 3.391, 1.129 |
#[ 17]: ( 645, 134 ), 0.127, 4.199, 2.537 |
#[ 18]: ( 91, 67 ) <-|
width 303 <-- wing width in pixels
cubital_index 3.268 <-|
precubital_index 2.789 | indexes used by beekeepers
Hantel_index 0.3585 |
discoidal_shift 7.321 <-|
wing000471_1R.dw.png
#[ 0]: ( 204, 142 ), 4.396, 0.180, 2.433
#[ 1]: ( 222, 144 ), 5.784, 3.304, 1.017
#[ 2]: ( 280, 60 ), 6.034, 3.583, 2.042
#[ 3]: ( 271, 116 ), 4.927, 0.054, 2.434
#[ 4]: ( 279, 200 ), 3.948, 6.139, 2.257
#[ 5]: ( 345, 54 ), 5.951, 2.224, 3.458
#[ 6]: ( 393, 26 ), 3.789, 5.857, 1.757
#[ 7]: ( 382, 42 ), 5.516, 2.927, 0.748
#[ 8]: ( 424, 73 ), 3.958, 0.036, 2.345
#[ 9]: ( 386, 100 ), 5.691, 1.086, 3.286
#[ 10]: ( 431, 131 ), 3.639, 5.842, 1.534
#[ 11]: ( 437, 171 ), 5.193, 3.015, 1.030
#[ 12]: ( 455, 201 ), 4.120, 6.051, 2.138
#[ 13]: ( 478, 35 ), 3.583, 1.409, 5.887
#[ 14]: ( 502, 61 ), 3.827, 0.540, 2.601
#[ 15]: ( 585, 104 ), 4.066, 2.685, 0.266
#[ 16]: ( 618, 107 ), 5.967, 3.232, 1.288
#[ 17]: ( 631, 134 ), 0.127, 4.213, 2.513
#[ 18]: ( 80, 64 )
width 302
cubital_index 3.116
precubital_index 2.734
Hantel_index 0.3658
discoidal_shift 6.411
The format of the vein junctions data:
#[ 0]: ( 214, 139 ), 4.271, 0.073, 2.761
_____ ________
___________________
| |
|
| |
|->
angles at which veins approach vein junctions
| |
| |-> coordinates of the
vein junction
|
|-> number of the vein junction
The coordinates and angles are in bitmap coordinate system - (0,0) point is in the upper left corner of the image. The angles are in radians: 0 = right, 1.57 = down, 3.14 = left, 4.71 = up.
Coordinates of the vein junctions in Cartesian coordinate system are saved in a text file with extension .tps, which can be used with TPS software. Description of the TPS format can be found in documentation of the TPS software.
The standard wing images can be converted to a wing diagram using Wing diagram.

Wing diagram of honeybee (A. m. carnica).
You can analyse all image files from a directory using Analyse directory.
version 0.43 (25/09/2007) junction #18 visible even if not found. Many thanks to Usman H Dukku and LACOSTE for leting me know about this bug.
version 0.42 (05/07/2007) small changes of GUI, corrected classification of honeybees, new CSV export.
version 0.41 (02/07/2007) improved GUI, fixed Hantel index error, fixed JPG problem. Many thanks to Peter Edwards for reporting the problems.
versions 0.12 and older were licensed under GPL.
Tofilski A. 2004. DrawWing, a program for numerical description of insect
wings. Journal of Insect Science, 4:17, 5pp.
Available online: insectscience.org/4.17
Linux download drawwing-0.12.tar.gz
Windows download drawwing-0.12.zip
Last updated 25/09/2007