From b789647a45753109035a33d64d582886b2ba5f20 Mon Sep 17 00:00:00 2001
From: yliu2 <liuyu2209@gmail.com>
Date: Mon, 14 Sep 2020 11:37:03 +0200
Subject: [PATCH] Update Pixel operatitions, Add new module Absolute value

---
 app/Algorithms/ClassAnalysis.cpp      |  16 +-
 app/CMakeLists.txt                    |   3 +
 app/Operations/AbsoluteConvertOp.cpp  |  54 +++++++
 app/Operations/AbsoluteConvertOp.h    |  19 +++
 app/Operations/ClassResultOp.cpp      |   1 -
 app/Operations/ColorDialog.cpp        |  12 ++
 app/Operations/ColorDialog.h          |   5 +
 app/Operations/ColorDialog.ui         |  23 ++-
 app/Operations/ColorimetryOp.h        |   1 +
 app/Operations/MeanSquaredErrorOp.cpp |   4 +-
 app/Operations/MyQLineEdit.h          |  64 ++++++++
 app/Operations/PointOp.cpp            | 201 +++++++++++++++-----------
 app/Operations/PointOp.h              | 171 +++++++++++++---------
 app/Operations/SinusSynthesisOp.cpp   |   2 +
 app/Operations/SplitHsvOp.cpp         |   2 -
 app/img/qcolor-hsv.png                | Bin 0 -> 115862 bytes
 app/main.cpp                          |   2 +
 core/Operation.h                      |   2 +-
 lib/detiq-t                           |   2 +-
 19 files changed, 414 insertions(+), 170 deletions(-)
 create mode 100644 app/Operations/AbsoluteConvertOp.cpp
 create mode 100644 app/Operations/AbsoluteConvertOp.h
 create mode 100644 app/Operations/MyQLineEdit.h
 create mode 100644 app/img/qcolor-hsv.png

diff --git a/app/Algorithms/ClassAnalysis.cpp b/app/Algorithms/ClassAnalysis.cpp
index 1e1b151..1ce80f6 100644
--- a/app/Algorithms/ClassAnalysis.cpp
+++ b/app/Algorithms/ClassAnalysis.cpp
@@ -403,24 +403,26 @@ string ClassAnalysis::print_file_info( FILE *f ) {
         }
         else {
             for( counter=0; counter< num_classes; counter++ ) {
-              r = fscanf( f, "%lf", &moy1 );
-              checkFscanfResult(r);
+                r = fscanf( f, "%lf", &moy1 );
+                checkFscanfResult(r);
                 r = fscanf( f, "%lf", &var1 );
                 checkFscanfResult(r);
+                checkFscanfResult(r);
                 r = fscanf( f, "%lf", &moy2 );
                 checkFscanfResult(r);
                 r = fscanf( f, "%lf", &var2 );
                 checkFscanfResult(r);
-              sprintf( buffer, "---- Class %d:\n", (counter+1) );
+                sprintf( buffer, "---- Class %d:\n", (counter+1) );
                 returnval = returnval + buffer;
                 sprintf( buffer, "     Mean of means: %f\n", moy1 );
                 returnval = returnval + buffer;
-                //sprintf( buffer, "     Stdev of means: %f\n", var1 );
-                //returnval = returnval + buffer;
+                sprintf( buffer, "     Variance of means: %f\n", var1 );
+                returnval = returnval + buffer;
                 sprintf( buffer, "     Mean of stdevs: %f\n", moy2 );
                 returnval = returnval + buffer;
-                //sprintf( buffer, "     Stdev of stdevs: %f\n", var2 );
-                //returnval = returnval + buffer;
+                sprintf( buffer, "     Variance of stdevs: %f\n", var2 );
+                returnval = returnval + buffer;
+
                 returnval = returnval + "\n";
             }
         }
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index 47c56a6..58b224e 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -17,6 +17,8 @@ set(imageinsa_SOURCES
 	Algorithms/Pyramid.cpp
 	Algorithms/Pyramid.cpp
 	Algorithms/Pyramid.h
+        Operations/AbsoluteConvertOp.cpp
+        Operations/AbsoluteConvertOp.h
 	Operations/BFlitOp.cpp
 	Operations/BFlitOp.h
 	Operations/CenterOp.cpp
@@ -97,6 +99,7 @@ set(imageinsa_SOURCES
 	Operations/NoiseOp.h
 	Operations/PointOp.cpp
 	Operations/PointOp.h
+        Operations/MyQLineEdit.h
 	Operations/PseudoColorDialog.cpp
 	Operations/PseudoColorDialog.h
 	Operations/PseudoColorOp.cpp
diff --git a/app/Operations/AbsoluteConvertOp.cpp b/app/Operations/AbsoluteConvertOp.cpp
new file mode 100644
index 0000000..eb6233c
--- /dev/null
+++ b/app/Operations/AbsoluteConvertOp.cpp
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2011-2012 INSA Rennes
+ *
+ * This file is part of ImageINSA.
+ *
+ * ImageINSA is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * ImageINSA is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with ImageINSA.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+
+#include "AbsoluteConvertOp.h"
+#include "../Tools.h"
+#include <QApplication>
+#include <QObject>
+#include "Operation.h"
+#include "Image.h"
+#include <Converter.h>
+#include <QLabel>
+#include <QStringList>
+
+using namespace imagein;
+
+AbsoluteConvertOp::AbsoluteConvertOp() : DoubleOperation(qApp->translate("Operations", "Convert to Absolute").toStdString())
+{
+}
+
+bool AbsoluteConvertOp::needCurrentImg() const{
+    return true;
+}
+
+void AbsoluteConvertOp::operator()(const imagein::Image_t<double>* from, const std::map<const imagein::Image_t<double>*, std::string>&){
+
+    ImageDouble* resImg = new ImageDouble(from->getWidth(), from->getHeight(), from->getNbChannels());
+
+    for(unsigned int i = 0; i < from->getWidth(); i++){
+        for(unsigned int j = 0; j < from->getHeight(); j++){
+            for(unsigned int k = 0; k < from->getNbChannels(); k++){
+                double newPixel = fabs(from->getPixel(i, j, k));
+                resImg->setPixel(i, j, k, newPixel );
+            }
+        }
+    }
+    outDoubleImage(resImg, "Absolute", false, false, false, false);
+}
diff --git a/app/Operations/AbsoluteConvertOp.h b/app/Operations/AbsoluteConvertOp.h
new file mode 100644
index 0000000..19f6f5b
--- /dev/null
+++ b/app/Operations/AbsoluteConvertOp.h
@@ -0,0 +1,19 @@
+#ifndef ABSOLUTECONVERTOP_H
+#define ABSOLUTECONVERTOP_H
+
+#include <QObject>
+#include "Operation.h"
+
+class AbsoluteConvertOp : public DoubleOperation
+{
+public:
+    AbsoluteConvertOp();
+
+    bool needCurrentImg() const;
+
+    void operator()(const imagein::Image_t<double>*, const std::map<const imagein::Image_t<double>*, std::string>&);
+};
+
+
+#endif // ABSOLUTECONVERTOP_H
+
diff --git a/app/Operations/ClassResultOp.cpp b/app/Operations/ClassResultOp.cpp
index cb3767b..342ac75 100644
--- a/app/Operations/ClassResultOp.cpp
+++ b/app/Operations/ClassResultOp.cpp
@@ -79,7 +79,6 @@ void ClassResultOp::operator()(const imagein::Image* img, const std::map<const i
 //    int param2 = 8;
     /*The input parameters are not used*/
     int param1 = borderBox->value();
-    /*int paramBorderBox = borderBox->value();*/
     int param2 = innerBox->value();
     vector<Rectangle> selection = zoneSelector->getSelections();
     int K = selection.size();
diff --git a/app/Operations/ColorDialog.cpp b/app/Operations/ColorDialog.cpp
index ad90393..eaab7f3 100644
--- a/app/Operations/ColorDialog.cpp
+++ b/app/Operations/ColorDialog.cpp
@@ -27,6 +27,7 @@ ColorDialog::ColorDialog(QWidget *parent) :
     ui->setupUi(this);
     ui->hsvWidget->setVisible(false);
     this->adjustSize();
+    connect(ui->hintButton,SIGNAL(clicked()),this,SLOT(getHint()));
 }
 
 ColorDialog::~ColorDialog()
@@ -57,3 +58,14 @@ unsigned int ColorDialog::getWidth() const {
 unsigned int ColorDialog::getHeight() const {
     return ui->heightBox->value();
 }
+
+void ColorDialog::getHint() {
+    QDialog* hint = new QDialog(QApplication::activeWindow());
+    hint->setWindowTitle(QString(qApp->translate("ColorDialog", "A small tip for Qt HSV Color Model")));
+    hint->setLayout(new QVBoxLayout);
+    QLabel* pic = new QLabel(hint);
+    pic->setPixmap(QPixmap(":/images/qcolor-hsv.png"));
+    hint->resize(1180,360);
+    pic->resize(hint->size());
+    hint->show();
+}
diff --git a/app/Operations/ColorDialog.h b/app/Operations/ColorDialog.h
index c71776b..b04e0cb 100644
--- a/app/Operations/ColorDialog.h
+++ b/app/Operations/ColorDialog.h
@@ -21,6 +21,8 @@
 #define COLORDIALOG_H
 
 #include <QDialog>
+#include <QDebug>
+#include <QPixmap>
 
 namespace Ui {
 class ColorDialog;
@@ -37,6 +39,9 @@ public:
     unsigned int getWidth() const;
     unsigned int getHeight() const;
 
+public slots:
+    void getHint();
+
 private:
     Ui::ColorDialog *ui;
 };
diff --git a/app/Operations/ColorDialog.ui b/app/Operations/ColorDialog.ui
index 27bdb63..959dc50 100644
--- a/app/Operations/ColorDialog.ui
+++ b/app/Operations/ColorDialog.ui
@@ -32,6 +32,9 @@
         <property name="maximum">
          <number>65536</number>
         </property>
+        <property name="value">
+         <number>512</number>
+        </property>
        </widget>
       </item>
       <item row="1" column="0">
@@ -46,6 +49,9 @@
         <property name="maximum">
          <number>65536</number>
         </property>
+        <property name="value">
+         <number>512</number>
+        </property>
        </widget>
       </item>
      </layout>
@@ -155,24 +161,31 @@
         </property>
        </widget>
       </item>
-      <item row="3" column="0">
+      <item row="0" column="0">
+       <widget class="QLabel" name="label_4">
+        <property name="text">
+         <string>Hue : </string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="0">
        <widget class="QLabel" name="label_6">
         <property name="text">
          <string>Value : </string>
         </property>
        </widget>
       </item>
-      <item row="3" column="1">
+      <item row="2" column="1">
        <widget class="QSpinBox" name="valBox">
         <property name="maximum">
          <number>255</number>
         </property>
        </widget>
       </item>
-      <item row="0" column="0">
-       <widget class="QLabel" name="label_4">
+      <item row="6" column="1">
+       <widget class="QPushButton" name="hintButton">
         <property name="text">
-         <string>Hue : </string>
+         <string>Get a hint</string>
         </property>
        </widget>
       </item>
diff --git a/app/Operations/ColorimetryOp.h b/app/Operations/ColorimetryOp.h
index 1e2206c..33b104d 100644
--- a/app/Operations/ColorimetryOp.h
+++ b/app/Operations/ColorimetryOp.h
@@ -30,6 +30,7 @@ public:
     void operator()(const imagein::Image*, const std::map<const imagein::Image*, std::string>&);
 
     bool needCurrentImg() const;
+
 };
 
 #endif // COLORIMETRYOP_H
diff --git a/app/Operations/MeanSquaredErrorOp.cpp b/app/Operations/MeanSquaredErrorOp.cpp
index 713dd29..85f8c98 100644
--- a/app/Operations/MeanSquaredErrorOp.cpp
+++ b/app/Operations/MeanSquaredErrorOp.cpp
@@ -81,7 +81,9 @@ void MeanSquaredErrorOp::operator()(const imagein::Image* image, const std::map<
 
     mse = mse / static_cast<double>(maxChannel * maxWidth * maxHeight);
     me = me / static_cast<double>(maxChannel * maxWidth * maxHeight);
-    QString text = qApp->translate("MeanSquareErrorOp", "Mean squarred error : %1 (mean error : %2)");
+//    QString text = qApp->translate("MeanSquareErrorOp", "Mean squarred error : %1 (mean error : %2)");
+    /*Change the name to match the calculation performed*/
+    QString text = qApp->translate("MeanSquareErrorOp", "Mean squarred error : %1 (mean absolute error : %2)");
     text = text.arg(mse, 0, 'f', 2);
     text = text.arg(me, 0, 'f', 2);
 
diff --git a/app/Operations/MyQLineEdit.h b/app/Operations/MyQLineEdit.h
new file mode 100644
index 0000000..4d1c2a6
--- /dev/null
+++ b/app/Operations/MyQLineEdit.h
@@ -0,0 +1,64 @@
+/*
+ * Copyright 2011-2012 INSA Rennes
+ *
+ * This file is part of ImageINSA.
+ *
+ * ImageINSA is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * ImageINSA is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with ImageINSA.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef MYQLINEEDIT_H
+#define MYQLINEEDIT_H
+
+#include <QLineEdit>
+#include <QRegExp>
+#include <QRegExpValidator>
+#include <QIntValidator>
+#include <QDoubleValidator>
+
+class MyQLineEdit : public QLineEdit {
+
+  Q_OBJECT
+
+  public:
+    MyQLineEdit(QWidget *parent = nullptr) : QLineEdit(parent){};
+    MyQLineEdit(const QString &contents, QWidget *parent = nullptr) : QLineEdit(contents, parent){};
+
+  public slots:
+    void updateValidator(const QString &text){
+        QRegExp regLogicalExp("^[1]d*|0$");
+        QRegExp regShiftExp("^[1-7]d*|0$");
+        QRegExpValidator* logicalValidator = new QRegExpValidator(regLogicalExp,0);
+        QRegExpValidator* shiftValidator = new QRegExpValidator(regShiftExp,0);
+        QIntValidator* intValidator = new QIntValidator();
+        QDoubleValidator* doubleValidator = new QDoubleValidator();
+
+        if(text.contains("NOT")){
+            this->setEnabled(false);
+        }else{
+            this->setEnabled(true);
+        }
+
+        if(text.contains("logical")){
+            this->setValidator(logicalValidator);
+        }else if(text.contains("<<") || text.contains(">>")){
+            this->setValidator(shiftValidator);
+        }else if(text.contains("bit-wise")){
+            this->setValidator(intValidator);
+        }else{
+            this->setValidator(doubleValidator);
+        }
+    }
+};
+
+#endif // MYQLINEEDIT_H
diff --git a/app/Operations/PointOp.cpp b/app/Operations/PointOp.cpp
index c5cb395..8681bd4 100644
--- a/app/Operations/PointOp.cpp
+++ b/app/Operations/PointOp.cpp
@@ -28,13 +28,14 @@
 #include <QComboBox>
 #include <QCheckBox>
 #include <QGroupBox>
+#include <QDebug>
 
 #include "PointOp.h"
 #include <Widgets/ImageListBox.h>
 #include <Widgets/ImageWidgets/StandardImageWindow.h>
 #include <Widgets/ImageWidgets/DoubleImageWindow.h>
 #include <Converter.h>
-
+#include "MyQLineEdit.h"
 #include "../Tools.h"
 
 using namespace std;
@@ -42,7 +43,7 @@ using namespace imagein;
 using namespace genericinterface;
 
 PointOp::PointOp() : GenericOperation(qApp->translate("Operations", "Pixel operations").toStdString()) {
-    
+
 }
 
 PointOp::PixelOp* PointOp::PixelOp::fromString(QString op, QString expr) {
@@ -50,14 +51,17 @@ PointOp::PixelOp* PointOp::PixelOp::fromString(QString op, QString expr) {
     if(op=="-") return new PixAdd(-expr.toInt(0,0));
     if(op=="*") return new PixMul(expr.toDouble());
     if(op=="/") return new PixMul(1/expr.toDouble());
+    if(op=="& (bit-wise AND)") return new PixBitwiseAnd(expr.toUInt(0,0));
     if(op=="&& (logical AND)") return new PixLogicalAnd(expr.toUInt(0,0));
+    if(op=="! (logical NOT)") return new PixLogicalNot(expr.toUInt(0,0));
+    if(op=="| (bit-wise OR)") return new PixBitwiseOr(expr.toUInt(0,0));
     if(op=="|| (logical OR)") return new PixLogicalOr(expr.toUInt(0,0));
+    if(op=="^ (bit-wise XOR)") return new PixBitwiseXor(expr.toUInt(0,0));
     if(op=="^^ (logical XOR)") return new PixLogicalXor(expr.toUInt(0,0));
-    /*The operator of shift operations is considered as a double to simplify the structure*/
-//    if(op=="<<") return new PixLshift(expr.toUInt(0,0));
-//    if(op==">>") return new PixRshift(expr.toUInt(0,0));
+    if(op=="<<") return new PixLshift(expr.toUInt(0,0));
+    if(op==">>") return new PixRshift(expr.toUInt(0,0));
     if(op=="") return new PixIdent();
-    std::cout << "Unknown operator '" << op.toStdString() << "' !" << std::endl;
+    std::cout << "Unknown operator '" << op.toStdString() << "' ! PixelOp" << std::endl;
     return new PixIdent();
 }
 PointOp::DoublePixelOp* PointOp::DoublePixelOp::fromString(QString op, QString expr) {
@@ -65,13 +69,12 @@ PointOp::DoublePixelOp* PointOp::DoublePixelOp::fromString(QString op, QString e
     if(op=="-") return new DoublePixAdd(-expr.toDouble());
     if(op=="*") return new DoublePixMul(expr.toDouble());
     if(op=="/") return new DoublePixMul(1/expr.toDouble());
-    if(op=="&& (logical AND)") return new DoublePixLogicalAnd(expr.toDouble());
-    if(op=="|| (logical OR)") return new DoublePixLogicalOr(expr.toDouble());
-    if(op=="^^ (logical XOR)") return new DoublePixLogicalXor(expr.toDouble());
-    if(op=="<<") return new PixLshift(expr.toDouble());
-    if(op==">>") return new PixRshift(expr.toDouble());
+    if(op=="&& (logical AND)") return new DoublePixLogicalAnd(expr.toUInt());
+    if(op=="! (logical NOT)") return new DoublePixLogicalNot(expr.toUInt());
+    if(op=="|| (logical OR)") return new DoublePixLogicalOr(expr.toUInt());
+    if(op=="^^ (logical XOR)") return new DoublePixLogicalXor(expr.toUInt());
     if(op=="") return new DoublePixIdent();
-    std::cout << "Unknown operator '" << op.toStdString() << "' !" << std::endl;
+    std::cout << "Unknown operator '" << op.toStdString() << "' ! DoublePixelOp" << std::endl;
     return new DoublePixIdent();
 }
 
@@ -80,12 +83,14 @@ PointOp::ImageOp* PointOp::ImageOp::fromString(QString op) {
     if(op=="-") return new ImgSub();
     if(op=="*") return new ImgMul();
     if(op=="/") return new ImgDiv();
-    if(op=="& (bit-wise AND)") return new ImgBitAnd();
-    if(op=="! (bit-wise NOT)") return new ImgBitNot();
-    if(op=="| (bit-wise OR)") return new ImgBitOr();
-    if(op=="^ (bit-wise XOR)") return new ImgBitXor();
+    if(op=="& (bit-wise AND)") return new ImgBitwiseAnd();
+    if(op=="&& (logical AND)") return new ImgLogicalAnd();
+    if(op=="| (bit-wise OR)") return new ImgBitwiseOr();
+    if(op=="|| (logical OR)") return new ImgLogicalOr();
+    if(op=="^ (bit-wise XOR)") return new ImgBitwiseXor();
+    if(op=="^^ (logical XOR)") return new ImgLogicalXor();
     if(op=="") return new ImgIdent();
-    std::cout << "Unknown operator '" << op.toStdString() << "' !" << std::endl;
+    std::cout << "Unknown operator '" << op.toStdString() << "' ! ImageOp" << std::endl;
     return new ImgIdent();
 }
 
@@ -94,19 +99,22 @@ PointOp::DoubleImageOp* PointOp::DoubleImageOp::fromString(QString op) {
     if(op=="-") return new DoubleImgSub();
     if(op=="*") return new DoubleImgMul();
     if(op=="/") return new DoubleImgDiv();
-    if(op=="! (bit-wise NOT)") return new DoubleImgBitNot();
+    if(op=="&& (logical AND)") return new DoubleImgLogicalAnd();
+    if(op=="|| (logical OR)") return new DoubleImgLogicalOr();
+    if(op=="^^ (logical XOR)") return new DoubleImgLogicalXor();
     if(op=="") return new DoubleImgIdent();
-    std::cout << "Unknown operator '" << op.toStdString() << "' !" << std::endl;
+    std::cout << "Unknown operator '" << op.toStdString() << "' ! DoubleImageOp" << std::endl;
     return new DoubleImgIdent();
 }
 
 void PointOp::operator()(const ImageWindow* currentWnd, const vector<const ImageWindow*>& wndList) {
 
-    QStringList pixOperators, imgOperators, pixDoubleOperators;
+    QStringList pixOperators, pixDoubleOperators, imgOperators, imgDoubleOperators;
 
-    pixOperators << "" << "+" << "-" << "*" << "/" << "&& (logical AND)" << "|| (logical OR)" << "^^ (logical XOR)" << "<<" << ">>";
-    pixDoubleOperators << "" << "+" << "-" << "*" << "/";
-    imgOperators << "" << "+" << "-" << "*" << "/" << "& (bit-wise AND)" << "! (bit-wise NOT)" << "| (bit-wise OR)" << "^ (bit-wise XOR)";
+    pixOperators << "" << "+" << "-" << "*" << "/" << "& (bit-wise AND)" << "&& (logical AND)" << "! (logical NOT)" << "| (bit-wise OR)" << "|| (logical OR)" << "^ (bit-wise XOR)" << "^^ (logical XOR)" << "<<" << ">>";
+    pixDoubleOperators << "" << "+" << "-" << "*" << "/" << "&& (logical AND)" << "! (logical NOT)" << "|| (logical OR)" << "^^ (logical XOR)";
+    imgOperators << "" << "+" << "-" << "*" << "/" << "& (bit-wise AND)" << "&& (logical AND)" << "| (bit-wise OR)" << "|| (logical OR)" << "^ (bit-wise XOR)" << "^^ (logical XOR)";
+    imgDoubleOperators << "" << "+" << "-" << "*" << "/" << "&& (logical AND)" << "|| (logical OR)" << "^^ (logical XOR)";
 
     QString currentImgName = currentWnd->windowTitle();
     map<const Image*,string> stdImgList;
@@ -122,7 +130,6 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
         }
     }
 
-    
     QDialog* dialog = new QDialog();
     dialog->setWindowTitle(qApp->translate("Operations", "Parameters"));
     dialog->setMinimumWidth(180);
@@ -191,24 +198,32 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
     QHBoxLayout** valueLayouts = new QHBoxLayout*[nChannel+1];
     QComboBox** pixOperatorBoxes = new QComboBox*[nChannel+1];
     QComboBox** imgOperatorBoxes = new QComboBox*[nChannel+1];
-    QLineEdit** exprEdits = new QLineEdit*[nChannel+1];
+    MyQLineEdit** exprEdits = new MyQLineEdit*[nChannel+1];
     MixImageListBox** imageBoxes = new MixImageListBox*[nChannel+1];
 
     QWidget* pixelWidget = new QWidget(dialog);
+    QWidget* imgWidget = new QWidget(dialog);
     valueLayouts[0] = new QHBoxLayout();
     pixOperatorBoxes[0] = new QComboBox(pixelWidget);
     pixOperatorBoxes[0]->setWhatsThis(qApp->translate("PointOp", "Supported operations list which takes a value as operand: \n The input operand will be rounded down for shift operations"));
-    imgOperatorBoxes[0] = new QComboBox(pixelWidget);
+    imgOperatorBoxes[0] = new QComboBox(imgWidget);
     imgOperatorBoxes[0]->setWhatsThis(qApp->translate("PointOp", "Supported operations list whick takes an image as operand: \n The bit-wise NOT operation will automatically ignore the second image"));
+
     if(currentWnd->isStandard()){
         pixOperatorBoxes[0]->addItems(pixOperators);
-    }
-    if(currentWnd->isDouble()){
+        imgOperatorBoxes[0]->addItems(imgOperators);
+    }else{
         pixOperatorBoxes[0]->addItems(pixDoubleOperators);
+        imgOperatorBoxes[0]->addItems(imgDoubleOperators);
     }
-    imgOperatorBoxes[0]->addItems(imgOperators);
-    exprEdits[0] = new QLineEdit(pixelWidget);
+
+    exprEdits[0] = new MyQLineEdit(pixelWidget);
     exprEdits[0]->setFixedWidth(64);
+/*************************************************************/
+/*Overwrite QLineEdit class, send signals according to the change of combobox content to determine the corresponding supported input data type*/
+    QObject::connect(pixOperatorBoxes[0], SIGNAL(currentTextChanged(QString)), exprEdits[0], SLOT(updateValidator(QString)));
+    QObject::connect(imgOperatorBoxes[0], SIGNAL(currentTextChanged(QString)), exprEdits[0], SLOT(updateValidator(QString)));
+/*************************************************************/
     imageBoxes[0] = new MixImageListBox(pixelWidget, currentImgName.toStdString(), stdImgList, dblImgList);
     valueLayouts[0]->addWidget(new QLabel(currentImgName, pixelWidget));
     valueLayouts[0]->addWidget(pixOperatorBoxes[0]);
@@ -228,14 +243,15 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
         imgOperatorBoxes[i] = new QComboBox(colorWidget);
         if(currentWnd->isStandard()){
             pixOperatorBoxes[i]->addItems(pixOperators);
-        }
-        if(currentWnd->isDouble()){
+            imgOperatorBoxes[i]->addItems(imgOperators);
+        }else{
             pixOperatorBoxes[i]->addItems(pixDoubleOperators);
+            imgOperatorBoxes[i]->addItems(imgDoubleOperators);
         }
-
-        imgOperatorBoxes[i]->addItems(imgOperators);
-        exprEdits[i] = new QLineEdit(colorWidget);
+        exprEdits[i] = new MyQLineEdit(colorWidget);
         exprEdits[i]->setFixedWidth(64);
+        QObject::connect(pixOperatorBoxes[i], SIGNAL(currentTextChanged(QString)), exprEdits[i], SLOT(updateValidator(QString)));
+        QObject::connect(imgOperatorBoxes[i], SIGNAL(currentTextChanged(QString)), exprEdits[i], SLOT(updateValidator(QString)));
         imageBoxes[i] = new MixImageListBox(colorWidget, currentImgName.toStdString(), stdImgList, dblImgList);
         valueLayouts[i]->addWidget(new QLabel(currentImgName+"::"+Tools::colorName(i-1, nChannel), colorWidget));
         valueLayouts[i]->addWidget(pixOperatorBoxes[i]);
@@ -292,109 +308,125 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
     unsigned int maxWidth = image->getWidth();
     unsigned int maxHeight = image->getHeight();
 
-
-    Image_t<double>* resImg;
+    Image_t<double>* resDoubleImg;
+    Image* resImg;
 
     if(valueButton->isChecked()) {
-        DoublePixelOp** pixelOps = new DoublePixelOp*[nChannel];
+        PixelOp** pixelOps = new PixelOp*[nChannel];
+        DoublePixelOp** doublePixelOps = new DoublePixelOp*[nChannel];
         if(!colorBox->isChecked()) {
             QString expr = exprEdits[0]->text();
-            DoublePixelOp* pixelOp = DoublePixelOp::fromString(pixOperatorBoxes[0]->currentText(), expr);
-            for(int i=0; i<nChannel; ++i) pixelOps[i] = pixelOp;
+            PixelOp* pixelOp = PixelOp::fromString(pixOperatorBoxes[0]->currentText(), expr);
+            DoublePixelOp* doublePixelOp = DoublePixelOp::fromString(pixOperatorBoxes[0]->currentText(), expr);
+            for(int i=0; i<nChannel; ++i){
+                pixelOps[i] = pixelOp;
+                doublePixelOps[i] = doublePixelOp;
+            }
         }
         else {
             for(int i=0; i<nChannel; ++i) {
                 QString expr = exprEdits[i+1]->text();
-                pixelOps[i] = DoublePixelOp::fromString(pixOperatorBoxes[i+1]->currentText(), expr);
+                pixelOps[i] = PixelOp::fromString(imgOperatorBoxes[i+1]->currentText(), expr);
+                doublePixelOps[i] = DoublePixelOp::fromString(imgOperatorBoxes[i+1]->currentText(), expr);
             }
         }
 
-        resImg = new Image_t<double>(image->getWidth(), image->getHeight(), nChannel);
+        resImg = new Image(image->getWidth(), image->getHeight(), nChannel);
+        resDoubleImg = new Image_t<double>(image->getWidth(), image->getHeight(), nChannel);
         for(int c = 0; c < nChannel; ++c) {
             for(unsigned int j = 0; j < image->getHeight(); ++j) {
                 for(unsigned int i = 0; i < image->getWidth(); ++i) {
-                    double value = image->getPixel(i, j, c);
-                    value = pixelOps[c]->operator()(value);
-                    resImg->setPixel(i, j, c, value);
+                    if(dblResult){
+                        double value1 = image->getPixel(i, j, c);
+                        double value2 = doublePixelOps[c]->operator()(value1);
+                        resDoubleImg->setPixel(i, j, c, value2);
+                    }else{
+                        int value1 = image->getPixel(i, j, c);
+                        int value2 = pixelOps[c]->operator()(value1);
+                        resImg->setPixel(i, j, c, value2);
+                    }
                 }
             }
         }
     }
     else {
-        DoubleImageOp** imageOps = new DoubleImageOp*[nChannel];
         /*The double image process exist already, but cases of standard images is ignored*/
-        ImageOp** imageOpsStd = new ImageOp*[nChannel];
+        ImageOp** stdImageOps = new ImageOp*[nChannel];
+        DoubleImageOp** dblImageOps = new DoubleImageOp*[nChannel];
+
         bool isDblImg[nChannel];
         const Image_t<double>* dblImageImgs[nChannel];
         const Image* stdImageImgs[nChannel];
         if(!colorBox->isChecked()) {
-            DoubleImageOp* imageOp = DoubleImageOp::fromString(imgOperatorBoxes[0]->currentText());
-            for(int i=0; i<nChannel; ++i) imageOps[i] = imageOp;
+            DoubleImageOp* dblImageOp = DoubleImageOp::fromString(imgOperatorBoxes[0]->currentText());
+            ImageOp* stdImageOp = ImageOp::fromString(imgOperatorBoxes[0]->currentText());
+            for(int i=0; i<nChannel; ++i){
+                stdImageOps[i] = stdImageOp;
+                dblImageOps[i] = dblImageOp;
+            }
             if(imageBoxes[0]->currentType() == MixImageListBox::DBLIMG) {
-                const Image_t<double>* imageImg = imageBoxes[0]->getDblImage(imageBoxes[0]->currentText().toStdString());
+                const Image_t<double>* dblImg = imageBoxes[0]->getDblImage(imageBoxes[0]->currentText().toStdString());
                 for(int i=0; i<nChannel; ++i) {
-                    dblImageImgs[i] = imageImg;
+                    dblImageImgs[i] = dblImg;
                     isDblImg[i] = true;
                 }
-                maxWidth = min(maxWidth, imageImg->getWidth());
-                maxHeight = min(maxHeight, imageImg->getHeight());
+                maxWidth = min(maxWidth, dblImg->getWidth());
+                maxHeight = min(maxHeight, dblImg->getHeight());
             }
             else {
-                const Image* imageImg = imageBoxes[0]->getStdImage(imageBoxes[0]->currentText().toStdString());
-                ImageOp* imageOpStd = ImageOp::fromString(imgOperatorBoxes[0]->currentText());
+                const Image* stdImg = imageBoxes[0]->getStdImage(imageBoxes[0]->currentText().toStdString());
                 for(int i=0; i<nChannel; ++i) {
-                    imageOpsStd[i] = imageOpStd;
-                    stdImageImgs[i] = imageImg;
+                    stdImageImgs[i] = stdImg;
                     isDblImg[i] = false;
                 }
-                maxWidth = min(maxWidth, imageImg->getWidth());
-                maxHeight = min(maxHeight, imageImg->getHeight());
+                maxWidth = min(maxWidth, stdImg->getWidth());
+                maxHeight = min(maxHeight, stdImg->getHeight());
             }
-
         }
         else {
             for(int i=0; i<nChannel; ++i) {
-                imageOps[i] = DoubleImageOp::fromString(imgOperatorBoxes[i+1]->currentText());
+                stdImageOps[i] = ImageOp::fromString(imgOperatorBoxes[i+1]->currentText());
+                dblImageOps[i] = DoubleImageOp::fromString(imgOperatorBoxes[i+1]->currentText());
                 if(imageBoxes[i+1]->currentType() == MixImageListBox::DBLIMG) {
-                    const Image_t<double>* imageImg = imageBoxes[i+1]->getDblImage(imageBoxes[i+1]->currentText().toStdString());
+                    const Image_t<double>* dblImg = imageBoxes[i+1]->getDblImage(imageBoxes[i+1]->currentText().toStdString());
                     for(int i=0; i<nChannel; ++i) {
-                        dblImageImgs[i] = imageImg;
+                        dblImageImgs[i] = dblImg;
                         isDblImg[i] = true;
                     }
-                    maxWidth = min(maxWidth, imageImg->getWidth());
-                    maxHeight = min(maxHeight, imageImg->getHeight());
+                    maxWidth = min(maxWidth, dblImg->getWidth());
+                    maxHeight = min(maxHeight, dblImg->getHeight());
                 }
                 else {
-                    const Image* imageImg = imageBoxes[i+1]->getStdImage(imageBoxes[i+1]->currentText().toStdString());
+                    const Image* stdImg = imageBoxes[i+1]->getStdImage(imageBoxes[i+1]->currentText().toStdString());
                     for(int i=0; i<nChannel; ++i) {
-                        stdImageImgs[i] = imageImg;
+                        stdImageImgs[i] = stdImg;
                         isDblImg[i] = false;
                     }
-                    maxWidth = min(maxWidth, imageImg->getWidth());
-                    maxHeight = min(maxHeight, imageImg->getHeight());
+                    maxWidth = min(maxWidth, stdImg->getWidth());
+                    maxHeight = min(maxHeight, stdImg->getHeight());
                 }
             }
         }
-        resImg = new Image_t<double>(maxWidth, maxHeight, nChannel);
+
+        resImg = new Image(maxWidth, maxHeight, nChannel);
+        resDoubleImg = new Image_t<double>(maxWidth, maxHeight, nChannel);
         for(int c = 0; c < resImg->getNbChannels(); ++c) {
             for(unsigned int j = 0; j < resImg->getHeight(); ++j) {
                 for(unsigned int i = 0; i < resImg->getWidth(); ++i) {
-                    double value1 = image->getPixel(i, j, c);
-                    double value2;
                     if(isDblImg[c]) {
+                        double value1 = image->getPixel(i, j, c);
                         const unsigned int channel = (c < dblImageImgs[c]->getNbChannels() ? c : 0);
-                        value2 = dblImageImgs[c]->getPixel(i, j, channel);
+                        double value2 = dblImageImgs[c]->getPixel(i, j, channel);
+                        double resVal = dblImageOps[c]->operator()(value1, value2);
+                        resDoubleImg->setPixel(i, j, c, resVal);
                     }
                     else {
+                        int value1 = image->getPixel(i, j, c);
                         const unsigned int channel = (c < stdImageImgs[c]->getNbChannels() ? c : 0);
-                        value2 = stdImageImgs[c]->getPixel(i, j, channel);
+                        int value2 = stdImageImgs[c]->getPixel(i, j, channel);
+                        int resVal = stdImageOps[c]->operator()(value1, value2);
+                        resImg->setPixel(i, j, c, resVal);
                     }
-                    if(isDblImg[c]){
-                        value1 = imageOps[c]->operator()(value1, value2);
-                    }else{
-                        value1 = imageOpsStd[c]->operator()(value1, value2);
-                    }
-                    resImg->setPixel(i, j, c, value1);
                 }
             }
         }
@@ -402,15 +434,15 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
 
     if(dblResult) {
         if(currentDblWnd) {
-            this->outDoubleImage(resImg, "", currentDblWnd->isNormalized(), currentDblWnd->isLogScaled());
+            this->outDoubleImage(resDoubleImg, "", currentDblWnd->isNormalized(), currentDblWnd->isLogScaled());
         }
         else {
-            this->outDoubleImage(resImg, "", false, false);
+            this->outDoubleImage(resDoubleImg, "", false, false);
         }
         delete image;
     }
     else {
-        Image * charResImg;
+        Image* charResImg;
         bool _scaling = scalingBox->isChecked();
         bool _offset = offsetBox->isChecked();
         std::string outputMessage = "";
@@ -425,9 +457,8 @@ void PointOp::operator()(const ImageWindow* currentWnd, const vector<const Image
             charResImg = Converter<Image>::convertAndOffset(*intResImg, &outputMessage);
         }
         else{
-            charResImg = Converter<Image>::convertAndRound(*resImg);
+            charResImg = Converter<Image>::convert(*resImg);
             outputMessage = qApp->translate("Operations","Pas de conversion [min : 0, max : 255]").toStdString();
-
         }
         this->outText(outputMessage);
         this->outText("-------------------------------------------");
diff --git a/app/Operations/PointOp.h b/app/Operations/PointOp.h
index c9b2a12..5621ddc 100644
--- a/app/Operations/PointOp.h
+++ b/app/Operations/PointOp.h
@@ -24,6 +24,7 @@
 #include <map>
 #include <limits>
 #include <QCoreApplication>
+
 #include "Operation.h"
 #include "Image.h"
 
@@ -50,6 +51,9 @@ class PointOp : public GenericOperation {
         return static_cast<depth_t>(value);
     }
 
+/*----------------------------------------------------------------------
+                        Pixel Operation Templates
+----------------------------------------------------------------------*/
     struct PixelOp {
         virtual depth_t operator()(depth_t pixel) {
             return normalize(this->op(pixel));
@@ -66,7 +70,9 @@ class PointOp : public GenericOperation {
         static DoublePixelOp* fromString(QString op, QString expr);
         double value;
     };
-
+/*----------------------------------------------------------------------
+                       Pixel Identical Operation
+----------------------------------------------------------------------*/
     struct PixIdent : PixelOp {
         intmax_t op(depth_t pixel) { return pixel; }
     };
@@ -81,8 +87,12 @@ class PointOp : public GenericOperation {
         T value;
     };
 
-    struct PixAdd : PixOp_t<int> {
-        PixAdd(int value_) : PixOp_t<int>(value_) {}
+/*----------------------------------------------------------------------
+                      Pixel Arithmetic Operations
+----------------------------------------------------------------------*/
+    /*Subtraction and division are based on addition and multiplication, by processing the operand.*/
+    struct PixAdd : PixOp_t<depth_t> {
+        PixAdd(double value_) : PixOp_t<depth_t>(value_) {}
         intmax_t op(depth_t pixel) { return pixel + value; }
     };
 
@@ -91,9 +101,11 @@ class PointOp : public GenericOperation {
         double op(double pixel) { return pixel + value; }
     };
 
-    struct PixMul : PixOp_t<double> {
-        PixMul(double value_) : PixOp_t<double>(value_) {}
-        intmax_t op(depth_t pixel) { return pixel * value + 0.5; }
+    /*WHY + 0.5 ????? */
+    struct PixMul : PixOp_t<depth_t> {
+        PixMul(double value_) : PixOp_t<depth_t>(value_) {}
+//        intmax_t op(depth_t pixel) { return pixel * value + 0.5; }
+        intmax_t op(depth_t pixel) { return pixel * value ; }
     };
 
     struct DoublePixMul : DoublePixelOp {
@@ -101,66 +113,81 @@ class PointOp : public GenericOperation {
         double op(double pixel) { return pixel * value; }
     };
 
-    struct PixLogicalAnd : PixOp_t<depth_t> {
-        PixLogicalAnd(depth_t value_) : PixOp_t<depth_t>(value_) {}
-        intmax_t op(depth_t pixel) { return pixel && value; }
+/*----------------------------------------------------------------------
+                            Pixel    AND
+----------------------------------------------------------------------*/
+    struct PixBitwiseAnd : PixOp_t<depth_t> {
+        PixBitwiseAnd(depth_t value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return pixel & value; }
     };
 
-    /*Return zero if the operands have zero*/
+    /*Return zero only if any of operands is zero*/
+    struct PixLogicalAnd : PixOp_t<depth_t> {
+        PixLogicalAnd(int value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return (pixel==0 or value==0) ? 0 : pixel; }
+    };
     struct DoublePixLogicalAnd : DoublePixelOp {
-        DoublePixLogicalAnd(double value_) : DoublePixelOp(value_) {}
+        DoublePixLogicalAnd(int value_) : DoublePixelOp(value_) {}
         double op(double pixel) { return (pixel==0 or value==0) ? 0 : pixel; }
     };
-
-    /*There's no not logic for double value*/
-    struct PixNot : PixOp_t<depth_t> {
-        PixNot(depth_t value_) : PixOp_t<depth_t>(value_) {}
+/*----------------------------------------------------------------------
+                           Pixel    NOT
+----------------------------------------------------------------------*/
+    /*Logical flipping takes the complementary value to 255*/
+    struct PixLogicalNot : PixOp_t<depth_t> {
+        PixLogicalNot(depth_t value_) : PixOp_t<depth_t>(value_) {}
         intmax_t op(depth_t pixel) { return 255 - pixel; }
     };
-
+    struct DoublePixLogicalNot : DoublePixelOp {
+        DoublePixLogicalNot(double value_) : DoublePixelOp(value_) {}
+        double op(double pixel) { return 255. - pixel; }
+    };
+/*----------------------------------------------------------------------
+                             Pixel    OR
+----------------------------------------------------------------------*/
+    struct PixBitwiseOr : PixOp_t<depth_t> {
+        PixBitwiseOr(depth_t value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return pixel | value; }
+    };
+    /*Return zero only if the operands are both zero*/
     struct PixLogicalOr : PixOp_t<depth_t> {
         PixLogicalOr(depth_t value_) : PixOp_t<depth_t>(value_) {}
-        intmax_t op(depth_t pixel) { return pixel || value; }
+        intmax_t op(depth_t pixel) { return (pixel==0 and value==0) ? 0 : pixel; }
     };
-
-    /*Return zero only if the operands are both zero*/
     struct DoublePixLogicalOr : DoublePixelOp {
-        DoublePixLogicalOr(double value_) : DoublePixelOp(value_) {}
+        DoublePixLogicalOr(int value_) : DoublePixelOp(value_) {}
         double op(double pixel) { return (pixel==0 and value==0) ? 0 : pixel; }
     };
-
+/*----------------------------------------------------------------------
+                             Pixel    XOR
+----------------------------------------------------------------------*/
+    struct PixBitwiseXor : PixOp_t<depth_t> {
+        PixBitwiseXor(depth_t value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return pixel ^ value; }
+    };
+    /*Return zero only if the operands have the same value*/
     struct PixLogicalXor : PixOp_t<depth_t> {
         PixLogicalXor(depth_t value_) : PixOp_t<depth_t>(value_) {}
         intmax_t op(depth_t pixel) { return (pixel==value) ? 0 : pixel; }
     };
-
-    /*Return zero only if the operands have the same value*/
     struct DoublePixLogicalXor : DoublePixelOp {
-        DoublePixLogicalXor(double value_) : DoublePixelOp(value_) {}
+        DoublePixLogicalXor(int value_) : DoublePixelOp(value_) {}
         double op(double pixel) { return (pixel==value) ? 0 : pixel; }
     };
-
-//    struct PixLshift : PixOp_t<depth_t> {
-//        PixLshift(depth_t value_) : PixOp_t<depth_t>(value_) {}
-//        intmax_t op(depth_t pixel) { return pixel << value; }
-//    };
-    
-//    struct PixRshift : PixOp_t<depth_t> {
-//        PixRshift(depth_t value_) : PixOp_t<depth_t>(value_) {}
-//        intmax_t op(depth_t pixel) { return (int)pixel >> (int)value; }
-//    };
-
-    struct PixLshift : DoublePixelOp {
-        PixLshift(depth_t value_) : DoublePixelOp(value_) {}
-        double op(double pixel) { return (int)pixel << (int)value; }
+/*----------------------------------------------------------------------
+                           Pixel    Shifting
+----------------------------------------------------------------------*/
+    struct PixLshift : PixOp_t<depth_t> {
+        PixLshift(depth_t value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return pixel << value; }
     };
-
-    struct PixRshift : DoublePixelOp {
-        PixRshift(depth_t value_) : DoublePixelOp(value_) {}
-        double op(double pixel) { return (int)pixel >> (int)value; }
+    struct PixRshift : PixOp_t<depth_t> {
+        PixRshift(depth_t value_) : PixOp_t<depth_t>(value_) {}
+        intmax_t op(depth_t pixel) { return pixel >> value; }
     };
-
-
+/*----------------------------------------------------------------------
+                       Image Operation Templates
+----------------------------------------------------------------------*/
     struct ImageOp {
         virtual depth_t operator()(depth_t pixel1, depth_t pixel2) {
             return normalize(this->op(pixel1, pixel2));
@@ -176,14 +203,18 @@ class PointOp : public GenericOperation {
         virtual double op(double pixel1, double pixel2) = 0;
         static DoubleImageOp* fromString(QString op);
     };
-
+/*----------------------------------------------------------------------
+                      Image Identical Operations
+----------------------------------------------------------------------*/
     struct ImgIdent : ImageOp {
         intmax_t op(depth_t pix1, depth_t pix2) { return pix1; } 
     };
     struct DoubleImgIdent : DoubleImageOp {
         double op(double pix1, double pix2) { return pix1; }
     };
-
+/*----------------------------------------------------------------------
+                       Image Arithmetic Operations
+----------------------------------------------------------------------*/
     struct ImgAdd : ImageOp {
         intmax_t op(depth_t pix1, depth_t pix2) { return pix1 + pix2; } 
     };
@@ -212,42 +243,48 @@ class PointOp : public GenericOperation {
     struct DoubleImgDiv : DoubleImageOp {
         double op(double pix1, double pix2) { return pix1 / pix2; }
     };
-
-    struct ImgBitAnd : ImageOp {
+/*----------------------------------------------------------------------
+                           Image    AND
+----------------------------------------------------------------------*/
+    struct ImgBitwiseAnd : ImageOp {
         intmax_t op(depth_t pix1, depth_t pix2) { return pix1 & pix2; } 
     };
 
-    struct DoubleImgBitAnd : DoubleImageOp {
-        double op(double pix1, double pix2) { return (pix1==0 or pix2==0) ? 0 : pix1;}
+    struct ImgLogicalAnd : ImageOp {
+        intmax_t op(depth_t pix1, depth_t pix2) { return (pix1==0 || pix2==0) ? 255 : pix1; }
     };
 
-    /*To keep the symmetry of the interface, BitNot was categorized as an image operation
-      But for the negation operation, the second operand is unnecessary*/
-    struct ImgBitNot : ImageOp {
-        intmax_t op(depth_t pix1, depth_t pix2) { return 255 - pix1; }
+    struct DoubleImgLogicalAnd : DoubleImageOp {
+        double op(double pix1, double pix2) { return (pix1==0 || pix2==0) ? 255 : pix1; }
+    };
+/*----------------------------------------------------------------------
+                           Image    OR
+----------------------------------------------------------------------*/
+    struct ImgBitwiseOr : ImageOp {
+        intmax_t op(depth_t pix1, depth_t pix2) { return pix1 | pix2; } 
     };
 
-    /*DoubleImgBitNot is defined to reconcile two operators in different types*/
-    struct DoubleImgBitNot : DoubleImageOp {
-        double op(double pix1, double pix2) { return 255 - pix1; }
+    struct ImgLogicalOr : ImageOp {
+        intmax_t op(depth_t pix1, depth_t pix2) { return (pix1==0 && pix2==0) ? 255 : pix1; }
     };
 
-    struct ImgBitOr : ImageOp {
-        intmax_t op(depth_t pix1, depth_t pix2) { return pix1 | pix2; } 
+    struct DoubleImgLogicalOr : DoubleImageOp {
+        double op(double pix1, double pix2) { return (pix1==0 && pix2==0) ? 255 : pix1; }
     };
-    
-    struct DoubleImgBitOr : DoubleImageOp {
-        double op(double pix1, double pix2) { return (pix1==0 and pix2==0) ? 0 : pix1;}
+/*----------------------------------------------------------------------
+                            Image   XOR
+----------------------------------------------------------------------*/
+    struct ImgBitwiseXor : ImageOp {
+        intmax_t op(depth_t pix1, depth_t pix2) { return pix1 ^ pix2; }
     };
 
-    struct ImgBitXor : ImageOp {
-        intmax_t op(depth_t pix1, depth_t pix2) { return pix1 ^ pix2; } 
+    struct ImgLogicalXor : ImageOp {
+        intmax_t op(depth_t pix1, depth_t pix2) { return (pix1==pix2) ? 255 : pix1; }
     };
 
-    struct DoubleImgBitXor : DoubleImageOp {
-        double op(double pix1, double pix2) { return (pix1 == pix2) ? 0 : pix1; }
+    struct DoubleImgLogicalXor : DoubleImageOp {
+        double op(double pix1, double pix2) { return (pix1==pix2) ? 255 : pix1; }
     };
-
 };
 
 #endif //!PointOp_H
diff --git a/app/Operations/SinusSynthesisOp.cpp b/app/Operations/SinusSynthesisOp.cpp
index 7fead05..5d250ae 100644
--- a/app/Operations/SinusSynthesisOp.cpp
+++ b/app/Operations/SinusSynthesisOp.cpp
@@ -73,6 +73,8 @@ void SinusSynthesisOp::operator()(const imagein::Image*, const std::map<const im
     colorBox->addItem(qApp->translate("SinusSynthesisOp", "2 (Black and white)"));
     layout->insertRow(0, radioGroup);
     layout->insertRow(1, qApp->translate("SinusSynthesisOp", "Image size (width=height) : "), sizeBox);
+    /*Set the default initial size to 512*512 */
+    sizeBox->setValue(512);
     layout->insertRow(2, qApp->translate("SinusSynthesisOp", "Signal period (pixel) : "), periodBox);
     QLabel* orientationLabel = new QLabel(qApp->translate("SinusSynthesisOp", "Orientation (°): "));
     layout->insertRow(3, orientationLabel, angleBox);
diff --git a/app/Operations/SplitHsvOp.cpp b/app/Operations/SplitHsvOp.cpp
index 28e2dd2..3a3b41d 100644
--- a/app/Operations/SplitHsvOp.cpp
+++ b/app/Operations/SplitHsvOp.cpp
@@ -56,14 +56,12 @@ void SplitHsvOp:: operator()(const imagein::Image* image, const std::map<const i
                 resImgH->setPixelAt(i,j,color.hue());
                 resImgS->setPixelAt(i,j,color.saturation());
                 resImgV->setPixelAt(i,j,color.value());
-
             }
         }
         this->outDoubleImage(resImgH, "Hue",false,false);
         this->outDoubleImage(resImgS, "Saturation",false,false);
         this->outDoubleImage(resImgV, "Value",false,false);
 
-
 }
 
 
diff --git a/app/img/qcolor-hsv.png b/app/img/qcolor-hsv.png
new file mode 100644
index 0000000000000000000000000000000000000000..83494ad6d9ca5575711fb3cabf5b1a288975d851
GIT binary patch
literal 115862
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%0A;abCbrtX^EFAuV
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%0ASyeU3BL|
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
F{{Tc1G4=oe

literal 0
HcmV?d00001

diff --git a/app/main.cpp b/app/main.cpp
index 452b8be..0db6b27 100644
--- a/app/main.cpp
+++ b/app/main.cpp
@@ -30,6 +30,7 @@
 #include "Services/PluginManager.h"
 #include "Services/ImageINSAService.h"
 
+#include "Operations/AbsoluteConvertOp.h"
 #include "Operations/PointOp.h"
 #include "Operations/ThresholdOp.h"
 #include "Operations/TranslateOp.h"
@@ -136,6 +137,7 @@ int main(int argc, char** argv)
     image->addOperation(new SeparatorOp());
     //Mask and crops here
     image->addOperation(new SeparatorOp());
+    image->addOperation(new AbsoluteConvertOp());
     image->addOperation(new UCharConvertOp());
     image->addOperation(new SeparatorOp());
     image->addOperation(new ScalingOp());
diff --git a/core/Operation.h b/core/Operation.h
index 46fb89f..6084bbd 100644
--- a/core/Operation.h
+++ b/core/Operation.h
@@ -126,7 +126,7 @@ void outDoubleImage(imagein::ImageDouble* img, std::string title = "", bool norm
 
 
 /**
- * @brief %Output some text to th user interface.
+ * @brief %Output some text to the user interface.
  *
  * @param std::string The text to output, may contain multiple lines.
  */
diff --git a/lib/detiq-t b/lib/detiq-t
index 3a99904..b918c35 160000
--- a/lib/detiq-t
+++ b/lib/detiq-t
@@ -1 +1 @@
-Subproject commit 3a99904c0770a286941c6158e2a44cf1e1ceceb6
+Subproject commit b918c357c0daaab2c179a99802732d7ce0804437
-- 
GitLab