Download Latest Version surfacedefectsanalyzer_025_source.zip (2.0 MB)
Email in envelope

Get an email when there's a new version of Surface Defects Analyzer

Home / source / 0.25
Name Modified Size InfoDownloads / Week
Parent folder
surfacedefectsanalyzer_025_source.zip 2010-07-12 2.0 MB
dev_manual_ru.pdf 2010-07-12 1.1 MB
dev_manual_en.pdf 2010-07-12 901.9 kB
readme_ru.txt 2010-07-10 13.6 kB
readme_en.txt 2010-07-10 12.9 kB
Totals: 5 Items   4.0 MB 0
-------------------------------------------------------------------------------
  Surface Defects Analyzer v0.25 Readme

  Äàòà: 09.07.2010

  Àâòîð: Àëåêñàíäð [Stone] Äåíèñîâ
-------------------------------------------------------------------------------

Ñîäåðæàíèå:

1. Îïèñàíèå
2. Óñòàíîâêà ïðèëîæåíèÿ
3. Èñõîäíûé êîä
4. Èíôîðìàöèÿ î ëèöåíçèè
5. Ññûëêè
6. Ñïèñîê èçìåíåíèé

-------------------------------------------------------------------------------
1. Îïèñàíèå

Surface Defects Analyzer - ïðîåêò, ðåàëèçóþùèé ñèñòåìó óïðàâëåíèÿ îáíàðóæåíèåì
è èçìåðåíèåì ãåîìåòðè÷åñêèõ ïàðàìåòðîâ ïîâåðõíîñòè ñ èñïîëüçîâàíèåì îáðàáîòêè
ñòåðåîèçîáðàæåíèé.

Ïðîåêò ÿâëÿåòñÿ êðîññ-ïëàòôîðìåííîé ñèñòåìîé, êîòîðàÿ ïîääåðæèâàåò ïîäêëþ÷àåìûå
ìîäóëè ðàçëè÷íûõ òèïîâ äëÿ ñïåöèàëüíîé îáðàáîòêè äàííûõ, òðåáóåìîé ðàçëè÷íûìè
òèïàìè ïîâåðõíîñòåé.

Îáðàáîòêà ðàçäåëåíà íà òðè îñíîâíûõ ýòàïà:
1) Ïðåäîáðàáîòêà - óëó÷øåíèå êà÷åñòâà ñòåðåîèçîáðàæåíèé;
2) Àíàëèç ïîâåðõíîñòè - ñòðîèòñÿ ðåêòèôèöèðîâàííàÿ ðàçâåðòêà ïîâåðõíîñòè,
âûäåëÿþòñÿ äåôåêòû, ïðîèçâîäÿòñÿ èçìåðåíèÿ ðàçìåðîâ;
3) Àíàëèç ôîðìû äåôåêòîâ - ïðîâîäÿòñÿ îñíîâíûå èçìåðåíèÿ, ñïåöèàëèçèðîâàííûé
ïîäêëþ÷àåìûé ìîäóëü îñóùåñòâëÿåò âîññòàíîâëåíèå òðåõìåðíîé ôîðìû äåôåêòà,
êîòîðàÿ èñïîëüçóåòñÿ äëÿ îòîáðàæåíèÿ âíåøíåãî âèäà äåôåêòà è èçìåðåíèÿ åãî
ãëóáèíû. Íà äàííîì ýòàïå ìîæåò áûòü ïîëó÷åí îò÷åò ïî ðåçóëüòàòàì èçìåðåíèé.

Íà äàííûé ìîìåíò ðåàëèçîâàí òèï ïîâåðõíîñòè "Road" (äîðîæíàÿ ïîâåðõíîñòü).

Ñïèñîê îñíîâíûõ ôóíêöèé (è ðåàëèçîâàííûõ, è íå ðåàëèçîâàííûõ):
[*] Ñîçäàíèå ïðîåêòîâ è ñòåðåîèçîáðàæåíèé, ñîõðàíåíèå íàñòðîåê;
[*] Ïðåäîáðàáîòêà: âîçìîæíîñòü ïîìåíÿòü èçîáðàæåíèÿ ìåñòàìè, ìåäèàííàÿ
    ôèëüòðàöèÿ, óïðàâëåíèå óðîâíÿìè ïî ãèñòîãðàììå (àâòîìàòè÷åñêè ïðåäëàãàþòñÿ
    ïàðàìåòðû äëÿ óëó÷øåíèÿ êà÷åñòâà èçîáðàæåíèÿ);
[*] Ìàíèïóëÿöèÿ èçîáðàæåíèÿìè (óâåëè÷åíèå, ïðîêðóòêà, ñîõðàíåíèå);
[*] Îòîáðàæåíèå òðåõìåðíûõ ìîäåëåé: óïðàâëåíèå ñöåíîé, èìïîðò/ýêñïîðò
    òðåõìåðíûõ ìîäåëåé;
[*] Äîïîëíèòåëüíàÿ ôóíêöèîíàëüíîñòü: âåäåíèå æóðíàëà ðàáîòû ïðîãðàììû,
    íàñòðîéêà, ïîääåðæêà ëîêàëèçàöèè, óïðàâëåíèå ïîäêëþ÷àåìûìè ìîäóëÿìè è ò.ï.;
[ ] Ñîçäàíèå ðåêòèôèöèðîâàííîé ðàçâåðòêè ïîâåðõíîñòè – â äàííûõ ìîìåíò ðàáîòàåò
    êîððåêòíî èñêëþ÷èòåëüíî äëÿ ïðèëàãàåìîãî ïðèìåðà (çàãëóøêà);
[ ] Àâòîìàòèçèðîâàííîå âûäåëåíèå («Ïîìåòèòü äåôåêò»). Äàííàÿ ôóíêöèÿ äîëæíà
    áûòü ðåàëèçîâàíà â ïîäêëþ÷àåìûõ ìîäóëÿõ òèïà «Àíàëèç ïîâåðõíîñòè» (“Surface
    analysis”);
[ ] Âîññòàíîâëåíèå òðåõìåðíîé ôîðìû. Îäíà èç íàèáîëåå âàæíûõ ôóíêöèé, íà äàííûé
    ìîìåíò íå ðåàëèçîâàíà, èñïîëüçóåòñÿ òðåõìåðíàÿ ìîäåëü-çàãëóøêà. Ôóíêöèÿ
    äîëæíà áûòü ðåàëèçîâàíà â ïîäêëþ÷àåìûõ ìîäóëÿõ òèïà «Âîññòàíîâëåíèå
    òðåõìåðíîé ôîðìû» (“3D Shape Restoration ”).

-------------------------------------------------------------------------------
2. Óñòàíîâêà ïðèëîæåíèÿ

Äëÿ îáåñïå÷åíèÿ ðàáîòîñïîñîáíîñòè ïðèëîæåíèÿ ñëåäóåò ïðåäîñòàâèòü
äîïîëíèòåëüíûå äèíàìè÷åñêèå áèáëèîòåêè, èñïîëüçóåìûå ïðèëîæåíèåì:
* Qt ( QtOpenGL4, QtGui4, QtXml4, QtCore4 );
* OpenCV ( highgui210, cv210, cxcore210 )
  Ïðèìå÷àíèå: òðåáóåòñÿ ïåðåñîáðàòü ìîäóëü highgui, âíåñÿ èçìåíåíèÿ â
  ñîîòâåòñòâèè ñ ôàéëàìè, ïðèëàãàåìûìè ê ïðîåêòó;
* Intel IPP (åñëè èñïîëüçóåòñÿ, è ïðè ýòîì ñáîðêà íå ñòàòè÷åñêàÿ);
* Microsoft Visual C++ (åñëè ïðîåêò ñîáèðàåòñÿ íà Windows-ïëàòôîðìå ñ
  èñïîëüçîâàíèåì êîìïèëÿòîðà  Microsoft Visual C++).

-------------------------------------------------------------------------------
3. Èñõîäíûé êîä

Äëÿ êîìïèëÿöèè ïðîåêòà ìîæåò èñïîëüçîâàòüñÿ Microsoft Visual Studio è
Qt add-in, âòîðûì âàðèàíòîì ÿâëÿåòñÿ èñïîëüçîâàíèå äðóãèõ êîìïèëÿòîðîâ è ðó÷íàÿ
íàñòðîéêà ôàéëà ïðîåêòà Qt (.pro).

 ïðîöåññå ðàçðàáîòêè áûëè èñïîëüçîâàíû ñëåäóþùèå âåðñèè áèáëèîòåê:
* Qt: 4.5.3
* OpenCV: 2.1.0

-------------------------------------------------------------------------------
4. Èíôîðìàöèÿ î ëèöåíçèè

Ëèöåíçèîííàÿ èíôîðìàöèÿ áèáëèîòåêè OpenCV ïðèâåäåíà â ôàéëå
"opencv_license.txt". Qt ðàñïðîñòðàíÿåòñÿ ïî ëèöåíçèè LGPL.

Surface Defects Analyzer ÿâëÿåòñÿ ñîáñòâåííîñòüþ Àëåêñàíäðà [Stone] Äåíèñîâà
(stone33@mail.ru) è ðàñïðîñòðàíÿåòñÿ "Êàê åñòü". Âû ìîæåòå èñïîëüçîâàòü è
ìîäèôèöèðîâàòü ïðèëîæåíèå è ïðîãðàììíûé êîä íà ñâîé ñòðàõ è ðèñê. Òàêæå ìîæíî
ñâîáîäíî èñïîëüçîâàòü ëþáûå ôðàãìåíòû êîäà, íå îãðàíè÷åííûå ïðèâåäåííûìè âûøå
ëèöåíçèîííûìè ñîãëàøåíèÿìè. Ïðîñüáà ïðè èñïîëüçîâàíèè êîäà â ñâîèõ ïðîåêòàõ
ñîîáùèòü îá ýòîì ïî email.

Èñïîëüçóÿ ïðèëîæåíèå èëè èñõîäíîé êîä, Âû òåì ñàìûì ïðèíèìàåòå äàííîå
ëèöåíçèîííîå ñîãëàøåíèå.

-------------------------------------------------------------------------------
5. Ññûëêè

Ññûëêè íà èñòî÷íèêè, ïîëåçíûå äëÿ ïîíèìàíèÿ èñõîäíîãî êîäà è äàëüíåéøåé
ðàçðàáîòêè:

1)  C. Harris and M. Stephens. A combined corner and edge detection.
    // Proceedings of The Fourth Alvey Vision Conference, 1988. – Ñ.147-151.
2)  Li Zhang, Brian Curless, Steven M. Seitz. Rapid Shape Acquisition Using
    Color Structured Light and Multi-pass Dynamic Programming.
    // 1st international symposium on 3D data processing, visualization, and
    transmission, Padova, Italy, June 19-21, 2002.
    (http://grail.cs.washington.edu/pub/papers/Zhang-2002-RSA.pdf).
3)  OpenCV Reference Manual, 2010. – 1104ñ.
4)  Qt reference (Qt Assistant).
5)  M. Kass, A. Witkin, D. Terzopoulos. Snakes: Active Contour Models.
    // International Journal of Computer Vision, ò.1, 1987. – Ñ.321-331.
6)  C. Xu, J.L. Prince. Snakes, Shapes, and Gradient Vector Flow.
    // IEEE Trans. on Image Processing, ò.7, ¹3, 1998. – Ñ.359-369.
7)  E.V. Zaugolnova, D.V. Yurin. Algorithm for Refinement of Preliminary
    Segmentation of Images with Smooth, Low Contrast 2D Objects Boundaries.
    – In proc. Graphicon, 2006.
8)  H. Christopher Longuet-Higgins. A computer algorithm for reconstructing
    a scene from two projections. // Nature, 293, 1981. – Ñ.133–135.
    (http://www.nature.com/doifinder/10.1038/293133a0).
9)  Bob Fisher. The Essential Matrix, 1997. (http://homepages.inf.ed.ac.uk/
    rbf/CVonline/LOCAL_COPIES/EPSRC_SSAZ/node21.html).
10) A Generic Sparse Bundle Adjustment C/C++ Package Based on the
    Levenberg-Marquardt Algorithm. (http://www.ics.forth.gr/~lourakis/sba).
11) Abhijit S. Ogale, Yiannis Aloimonos. Shape and the stereo correspondence
    problem // International Journal of Computer Vision, 2005. – 65(1).
    (http://www.cs.umd.edu/~ogale/papers/ogaleIJCV05shape.pdf).
12) Zhengyou Zhang. Determining the Epipolar Geometry and its Uncertainty:
    A Review, 1998.
    (http://citeseer.ist.psu.edu/article/zhang96determining.html).
13) Robyn Owens. Epipolar geometry, 1997. (http://homepages.inf.ed.ac.uk/
    rbf/CVonline/LOCAL_COPIES/OWENS/LECT10/node3.html).
14) Quang-Tuan Luong. Learning Epipolar Geometry.
    (http://www.ai.sri.com/~luong/research/Meta3DViewer/EpipolarGeo.html).
15) Richard Hartley, Andrew Zisserman. Multiple View Geometry in computer
    vision, 2003. – Cambridge University Press. 
    (http://books.google.com/books?id=si3R3Pfa98QC&pg=PA153&dq=pinhole+
    intitle:%22Multiple+View+Geometry+in+computer+vision%22&lr=&as_brr=0&
    ei=nUSqR4WwHqP2iwGn-MiwCg&sig=0_W7ppQQx1zDNlCGYXLySmr4OOU).
16) Ingrid Carlbom, Joseph Paciorek. Planar Geometric Projections and Viewing
    Transformations. – ACM Computing Surveys 10 (4), 1978. – Ñ.465–502.
    (http://www.cs.uns.edu.ar/cg/clasespdf/p465carlbom.pdf).
17) B. Triggs, P. McLauchlan, R. Hartley, A. Fitzgibbon. Bundle Adjustment –
    A Modern Synthesis, Vision Algorithms: Theory and Practice, 1999.
    (http://lear.inrialpes.fr/pubs/2000/TMHF00/Triggs-va99.pdf).
18) Subhashis Banerjee. How to compute a homography, 2008.
    (http://www.cse.iitd.ac.in/~suban/vision/geometry/node24.html).
19) 3D projection. (http://en.wikipedia.org/wiki/3D_projection).
20) 3x4 Projection Matrix. (http://homepages.inf.ed.ac.uk/rbf/CVonline/
    LOCAL_COPIES/EPSRC_SSAZ/node3.html).


*   Open Computer Vision Library.
    (http://sourceforge.net/projects/opencvlibrary).
*   Intel® IPP – Intel® Software Network.
    (http://software.intel.com/en-us/intel-ipp).
*   Qt – A cross-platform application and UI framework.
    (http://qt.nokia.com/products).

-------------------------------------------------------------------------------
6. Ñïèñîê èçìåíåíèé

*** 21.06.2010 - v0.25 ***
- Fixed rare bug with defects removal occured when the same
  defect was selected in both 2nd and 3rd tabs
- Fixed issue with JPEG files not saving on WinXP platform
- Plenty of GUI fixes
- Accelerators redesigned, added Smart refresh tool
- Ruler tool updated

*** 20.06.2010 - v0.24 ***
- Rectified projection of surface is now calculated
- Fixed bug with ruler tool when it was not visible
- Rescaling measures from mm to cm

*** 20.06.2010 - v0.23 ***
- Fixed issue when not asking for unsaved changes before exit
- Defects selections
- Shortcuts, menu commands for defect commands
- Ruler tool implemented
- Fixed GUI issues

*** 20.06.2010 - v0.22 ***
- Fixed issues when starting application from 'Release'
  or 'Debug' folders
- Fixed projects directory parameter changes issue when it
  worked not properly after change
- Defects data is cleared right after project is closed
- Fixed issue with double check of unsaved changes when
  closing the application window
- Now scale factor is saved within project, so when loaded
  rectified projection + scale factor give full information
  about projection

*** 19.06.2010 - v0.21 ***
- Fixed file saving issue with line feeds
- Added Shape restoration functionality (interface and
  placeholder methods for plugin)
- Rectified projection images are now saved
- Defect lists
- Defect parameters measuring
- Displaying full information about defects
- Generation of reports

*** 18.06.2010 - v0.20 ***
- Added preprocessing parameter for sending images to
  configuration widget which greately improved speed
  of switching between modifiers
- Fixed bug with updating modifiers information after
  switching stereo images
- Updated histogram modifier (single overlapped histogram,
  controls, auto values calculated using quantiles)
- Controls state is updated properly, new controls

*** 18.06.2010 - v0.19 ***
- Added main configuration plugins support
- Added preprocessing plugins support
- Added basic filters - median, images swapping, histogram
- Added utility to convert images from QPixmap to IplImage
- Implemented modifiers controls

*** 17.06.2010 - v0.18 ***
- Fixed importing normals
- Improved import of 3D models
- Implemented export of 3D models
- Changed 3D preview light position

*** 15.06.2010 - v0.17 ***
- Fixed bug with zoom icon displayed on graphics scenes
  scroll bars
- Imported 3D models are now sored within single mesh
  (and also will be exported as single object)
- New comparison methods for SDAPoint3D
- GUI minor changes

*** 14.06.2010 - v0.16 ***
- 3D viewer shading and zoom speed improved
- New features - opening files to import, clearing scene
- Ruler tool added (not yet implemented)

*** 10.06.2010 - v0.15 ***
- 3D viewer implemented
- OBJ importer implemented
- Zoom rectangle replaced by rubber band
- Stereo images views are fully sinchronized now

*** 07.06.2010 - v0.14 ***
- Bugfixes
- Zoom Tool implemented
- Hand Tool is deleted - hand is used by default

*** 05.06.2010 - v0.13 ***
- OpenCV updated to 2.1.0
- User controls for surface analyzing and
  defect shape analyzing added
- OpenGL widget and rendering functionality
- Information about Qt, OpenCV, IPP

*** 04.06.2010 - v0.12 ***
- BUGFIX: memory leak issue solved which occured while
  setting images to graphics scene and image viewer
- GUI preparation for future features
- Language and JPEG quality options
- Options window (not jet implemented)

*** 03.06.2010 - v0.11 ***
- Working image viewer
- Graphics scenes for processed images display,
  additional information is displayed
- Zooming abilities
- Image saving

*** 02.06.2010 - v0.10 ***
- Bug fixes in stereo images handling
- GUI design changes
- SDAGraphicsScene class created
- Log window state tracking

*** 01.06.2010 - v0.09 ***
- Operations with image sets are fully implemented
- Saving and opening of project format v0.3,
  all data about image sets is saved
- Image viewer
- Reorganized plugins projects

*** 30.05.2010 - v0.08 ***
- Fixed bugs in plugins unloading procedure
- Implemented project tree, adding and removing of stereo
  image sets

*** 29.05.2010 - v0.07 ***
- Added profile selection procedure
- Unnecessary plugins are unloaded after profile selection
- Changes in plugin data structures

*** 28.05.2010 - v0.06 ***
- Added stereo base configuration feature
- Solution structure reorganization
- Added dedicated configuration structures for project and
  image sets
- User interface changes
- WIP: project tree implementation
- WIP: plugins support

*** 26.05.2010 - v0.05 ***
- Project name changed to Surface Defects Analyzer in order
  to make a step forward to universality
- cvGetImageSize() function added to OpenCV's highgui.dll
  in order to provide functionality to get image size
  without opening (allocating memory)
- NewImageSetDialog implemented

*** 23.05.2010 - v0.04 ***
- Improved window position saving
- Implemented project file opening
- Added multilanguage support, russian language translation

*** 14.05.2010 - v0.03 ***
- Added window position saving
- Implemented project file saving
  including all warnings, creation of subfolders, etc
Source: readme_ru.txt, updated 2010-07-10