View Issue Details

IDProjectCategoryView StatusLast Update
0023272Open CASCADEOCCT:Visualizationpublic2019-09-16 14:10
Reportervro Assigned Tokgv  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2010 
Product Version6.5.3 
Target Version6.5.4Fixed in Version6.5.4 
Summary0023272: Image comparison algorithm
DescriptionThere is a need for non-regression tests to compare images produced on different computers.
TagsNo tags attached.
Test case numberNot needed

Attached Files

  • compareImages (1,195 bytes)
  • occDiff.js (14,983 bytes)
  • diff.htm (960 bytes)

Relationships

parent of 0028876 closedbugmaster Open CASCADE Tests, Image_Diff - the image difference is unavailable for test case bugs vis bug28205_1 
parent of 0029847 closedbugmaster Community Visualization, Image_Diff - Tolerance is not effective for 24/32bit image formats 
parent of 0030946 closedabv Open CASCADE Visualization - Image_AlienPixMap ignores 1-bit pixelformat when using FreeImage 
related to 0023049 closedbugmaster Open CASCADE Optimize packaging and dependencies of visualization libraries 
related to 0028441 closedbugmaster Open CASCADE Coding Rules - move out nested Image_PixMap::ImgFormat enumeration to dedicated enum Image_Format 
child of 0023372 closedabv Open CASCADE "diffimage" using in tests commands 

Activities

vro

2012-07-13 13:34

developer   ~0020950

A new class is created Image_Diff. It compares two images. The main goal of the class is to ignore difference in images produced on different computers, and taking into account the meaningful difference.
Also, a draw-command "diffimage" is implemented. It uses Image_Diff to compare 2 images.
The modified files are integrated into CR23272.
Please, review the modifications. Any advice is welcome!
All theory of the algorithm is described in Image_Diff.cdl

vro

2012-07-13 13:43

developer  

compareImages (1,195 bytes)

vro

2012-07-13 13:44

developer   ~0020952

A script comparing same images of two folders is attached (compareImages).

kgv

2012-07-19 18:48

developer   ~0021075

Patch was slightly modified.
Current progress pushed into branch CR23272_2.

kgv

2012-07-21 22:09

developer  

occDiff.js (14,983 bytes)

kgv

2012-07-21 22:10

developer  

diff.htm (960 bytes)

kgv

2012-07-21 22:12

developer   ~0021101

Attached script 'occDiff.js' can be used to compare images on web page (test result).

kgv

2012-07-24 13:27

developer   ~0021137

Patch is ready for review in branch CR23272_2

san

2012-07-24 17:38

developer   ~0021140

Branch CR23272_2 reviewed without remarks, ready for testing.

mkv

2012-08-23 16:33

tester   ~0021328

Dear BugMaster,
Branch CR23272_2 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Regression:
There are a lot of regressions with following message during call xwd:
Tcl Exception:

See, for example
http://jenkins-test-01.nnov.opencascade.com:8080/user/mnt/my-views/view/CR23272_2/job/mnt-CR23272_2-master_occt_tests_linux_start/label=Mandriva2010,tests_group=boolean,tests_subgroup=001/3/HTML_Report/?

kgv

2012-08-30 19:02

developer   ~0021368

The regression was fixed and pushed to CR23272_3 branch.
Please perform testing again.

The problem was with GIF saving by xwd command (image doesn't saved but generates empty file).

However "Tcl Exception" generated by test routines not by xwd command itself and looks inadequate log for this situation (0-byte image file).

mkv

2012-08-31 14:16

tester   ~0021374

Dear BugMaster,
Branch CR23272_3 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Regression:
Not detected

Improvements:
Not detected

Testing case:
Not needed

Related Changesets

occt: master 692613e5

2012-09-10 10:30:46

kgv

Details Diff
0023272: Image comparison algorithm

A new class Image_Diff for comparison of images
and a draw-command "diffimage", which compares 2 images.

Image_PixMap redesigned to provide interface for low-level image operations.
New Image_AlienPixMap class now intended for Save/Load functionality.

Aspect_PixMap class dropped.
Xw_PixMap and WNT_PixMap classes now do not inherit from Aspect_PixMap and deprecated.

ToPixMap methods now retrieve Image_PixMap as argument.

Conflicts:
src/ViewerTest/ViewerTest.cxx
Remarks applied
Fix compilation (correct merging error)

Eliminated Aspect <-> Image cyclic dependency

Fixed GIF dump in case of BGR32 image format
Affected Issues
0023272
mod - src/Aspect/Aspect.cdl Diff File
rm - src/Aspect/Aspect_PixMap.cdl Diff File
rm - src/Aspect/Aspect_PixMap.cxx Diff File
mod - src/Aspect/Aspect_Window.cdl Diff File
mod - src/Draw/Draw_Window.cxx Diff File
mod - src/Graphic3d/FILES Diff File
mod - src/Graphic3d/Graphic3d.cdl Diff File
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff File
mod - src/Image/FILES Diff File
mod - src/Image/Image.cdl Diff File
add - src/Image/Image_AlienPixMap.cxx Diff File
add - src/Image/Image_AlienPixMap.hxx Diff File
add - src/Image/Image_Color.hxx Diff File
rm - src/Image/Image_CRawBufferData.hxx Diff File
add - src/Image/Image_Diff.cxx Diff File
add - src/Image/Image_Diff.hxx Diff File
rm - src/Image/Image_PixMap.cdl Diff File
mod - src/Image/Image_PixMap.cxx Diff File
add - src/Image/Image_PixMap.hxx Diff File
add - src/Image/Image_PixMapData.hxx Diff File
mod - src/InterfaceGraphic/FILES Diff File
rm - src/InterfaceGraphic/InterfaceGraphic_RawBufferData.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_7.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.hxx Diff File
mod - src/QADraw/QADraw.cxx Diff File
mod - src/V3d/V3d_View.cdl Diff File
mod - src/V3d/V3d_View.cxx Diff File
mod - src/ViewerTest/ViewerTest.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - src/Visual3d/Visual3d_View.cdl Diff File
mod - src/Visual3d/Visual3d_View.cxx Diff File
mod - src/WNT/WNT_ImageProcessor.cxx Diff File
mod - src/WNT/WNT_PixMap.cdl Diff File
mod - src/WNT/WNT_PixMap.cxx Diff File
mod - src/WNT/WNT_Window.cdl Diff File
mod - src/WNT/WNT_Window.cxx Diff File
mod - src/Xw/Xw_PixMap.cdl Diff File
mod - src/Xw/Xw_PixMap.cxx Diff File
mod - src/Xw/Xw_save_image.cxx Diff File
mod - src/Xw/Xw_Window.cdl Diff File
mod - src/Xw/Xw_Window.cxx Diff File

Issue History

Date Modified Username Field Change
2012-07-13 12:06 vro New Issue
2012-07-13 12:06 vro Assigned To => vro
2012-07-13 13:34 vro Note Added: 0020950
2012-07-13 13:34 vro Assigned To vro => kgv
2012-07-13 13:34 vro Status new => resolved
2012-07-13 13:43 vro File Added: compareImages
2012-07-13 13:44 vro Note Added: 0020952
2012-07-19 18:48 kgv Note Added: 0021075
2012-07-21 22:09 kgv File Added: occDiff.js
2012-07-21 22:10 kgv File Added: diff.htm
2012-07-21 22:12 kgv Note Added: 0021101
2012-07-24 13:27 kgv Assigned To kgv => san
2012-07-24 13:27 kgv Note Added: 0021137
2012-07-24 17:38 san Note Added: 0021140
2012-07-24 17:38 san Assigned To san => bugmaster
2012-07-24 17:38 san Status resolved => reviewed
2012-07-30 11:25 bugmaster Assigned To bugmaster => miv
2012-08-07 18:35 miv Relationship added child of 0023372
2012-08-17 09:22 kgv Relationship added related to 0023049
2012-08-20 14:27 miv Assigned To miv => mkv
2012-08-23 16:33 mkv Note Added: 0021328
2012-08-23 16:34 mkv Assigned To mkv => kgv
2012-08-23 16:34 mkv Status reviewed => assigned
2012-08-30 19:02 kgv Note Added: 0021368
2012-08-30 19:02 kgv Assigned To kgv => bugmaster
2012-08-30 19:02 kgv Status assigned => resolved
2012-08-30 19:02 kgv Status resolved => reviewed
2012-08-31 14:16 mkv Note Added: 0021374
2012-08-31 14:16 mkv Test case number => Not needed
2012-08-31 14:16 mkv Status reviewed => tested
2012-09-10 17:08 kgv Changeset attached => occt master 692613e5
2012-09-10 17:08 kgv Assigned To bugmaster => kgv
2012-09-10 17:08 kgv Status tested => verified
2012-09-10 17:08 kgv Resolution open => fixed
2012-10-02 14:55 bugmaster Project Internal => Open CASCADE
2012-11-16 13:14 bugmaster Fixed in Version => 6.5.4
2012-11-16 13:17 bugmaster Status verified => closed
2017-02-05 13:50 kgv Relationship added related to 0028441
2017-07-03 15:56 kgv Relationship added parent of 0028876
2018-06-06 22:58 kgv Relationship added parent of 0029847
2019-09-16 14:10 kgv Relationship added parent of 0030946