Compare commits
4 Commits
v1.1.1
...
issue54-co
Author | SHA1 | Date | |
---|---|---|---|
520e6f8815 | |||
160a8cc3e8 | |||
e642436651 | |||
4606381495 |
@ -54,7 +54,7 @@ But... I've reinvented one...
|
|||||||
|
|
||||||
### For Windows
|
### For Windows
|
||||||
|
|
||||||
2. Download [YOLOLabel_20211126_v1.0](https://github.com/developer0hye/Yolo_Label/releases/download/v1.0.0/YoloLabel_v1.0.0.zip)
|
2. Download [YOLOLabel_20211130_v1.1.1](https://github.com/developer0hye/Yolo_Label/releases/download/v1.1.1/YoloLabel_v1.1.1.zip)
|
||||||
|
|
||||||
3. Unzip
|
3. Unzip
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ DEFINES += QT_DEPRECATED_WARNINGS
|
|||||||
# You can also select to disable deprecated APIs only up to a certain version of Qt.
|
# You can also select to disable deprecated APIs only up to a certain version of Qt.
|
||||||
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
|
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
|
||||||
|
|
||||||
CONFIG += c++11
|
CONFIG += c++1z
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
main.cpp \
|
main.cpp \
|
||||||
|
2
main.cpp
2
main.cpp
@ -4,7 +4,7 @@
|
|||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
QApplication a(argc, argv);
|
QApplication a(argc, argv);
|
||||||
MainWindow w;
|
MainWindow w(nullptr, argc, argv);
|
||||||
w.show();
|
w.show();
|
||||||
return a.exec();
|
return a.exec();
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
#include <QShortcut>
|
#include <QShortcut>
|
||||||
#include <QCollator>
|
#include <QCollator>
|
||||||
#include <iomanip>
|
#include <iomanip>
|
||||||
|
#include <cmath>
|
||||||
|
|
||||||
using std::cout;
|
using std::cout;
|
||||||
using std::endl;
|
using std::endl;
|
||||||
@ -15,7 +16,7 @@ using std::ofstream;
|
|||||||
using std::ifstream;
|
using std::ifstream;
|
||||||
using std::string;
|
using std::string;
|
||||||
|
|
||||||
MainWindow::MainWindow(QWidget *parent) :
|
MainWindow::MainWindow(QWidget *parent, int argc, char *argv[]) :
|
||||||
QMainWindow(parent),
|
QMainWindow(parent),
|
||||||
ui(new Ui::MainWindow)
|
ui(new Ui::MainWindow)
|
||||||
{
|
{
|
||||||
@ -33,6 +34,15 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
connect(new QShortcut(QKeySequence(Qt::Key_Delete), this), SIGNAL(activated()), this, SLOT(remove_img()));
|
connect(new QShortcut(QKeySequence(Qt::Key_Delete), this), SIGNAL(activated()), this, SLOT(remove_img()));
|
||||||
|
|
||||||
init_table_widget();
|
init_table_widget();
|
||||||
|
|
||||||
|
if(argc == 3)
|
||||||
|
{
|
||||||
|
std::cout << "Dataset Path: " << argv[1] << std::endl;
|
||||||
|
std::cout << "Label List File Path: " << argv[2] << std::endl;
|
||||||
|
open_img_dir(argv[1]);
|
||||||
|
open_obj_file(argv[2]);
|
||||||
|
init();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MainWindow::~MainWindow()
|
MainWindow::~MainWindow()
|
||||||
@ -333,6 +343,33 @@ void MainWindow::open_img_dir(bool& ret)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::open_img_dir(char* img_dir)
|
||||||
|
{
|
||||||
|
QString imgDir(img_dir);
|
||||||
|
QDir dir(imgDir);
|
||||||
|
QCollator collator;
|
||||||
|
collator.setNumericMode(true);
|
||||||
|
|
||||||
|
QStringList fileList = dir.entryList(
|
||||||
|
QStringList() << "*.jpg" << "*.JPG" << "*.png" << "*.bmp",
|
||||||
|
QDir::Files);
|
||||||
|
|
||||||
|
std::sort(fileList.begin(), fileList.end(), collator);
|
||||||
|
|
||||||
|
if(fileList.empty())
|
||||||
|
{
|
||||||
|
pjreddie_style_msgBox(QMessageBox::Critical,"Error", "This folder is empty");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_imgDir = imgDir;
|
||||||
|
m_imgList = fileList;
|
||||||
|
|
||||||
|
for(QString& str: m_imgList)
|
||||||
|
str = m_imgDir + "/" + str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::open_obj_file(bool& ret)
|
void MainWindow::open_obj_file(bool& ret)
|
||||||
{
|
{
|
||||||
pjreddie_style_msgBox(QMessageBox::Information,"Help", "Step 2. Open Your Label List File(*.txt or *.names)");
|
pjreddie_style_msgBox(QMessageBox::Information,"Help", "Step 2. Open Your Label List File(*.txt or *.names)");
|
||||||
@ -359,6 +396,24 @@ void MainWindow::open_obj_file(bool& ret)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::open_obj_file(char* file)
|
||||||
|
{
|
||||||
|
QString opened_dir;
|
||||||
|
if(m_imgDir.size() > 0) opened_dir = m_imgDir;
|
||||||
|
else opened_dir = QDir::currentPath();
|
||||||
|
|
||||||
|
QString fileLabelList(file);
|
||||||
|
|
||||||
|
if(fileLabelList.size() == 0)
|
||||||
|
{
|
||||||
|
pjreddie_style_msgBox(QMessageBox::Critical,"Error", "LabelList file is not opened()");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
load_label_list_data(fileLabelList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::reupdate_img_list()
|
void MainWindow::reupdate_img_list()
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -473,7 +528,7 @@ void MainWindow::init_table_widget()
|
|||||||
void MainWindow::on_horizontalSlider_contrast_sliderMoved(int value)
|
void MainWindow::on_horizontalSlider_contrast_sliderMoved(int value)
|
||||||
{
|
{
|
||||||
float valueToPercentage = float(value)/ui->horizontalSlider_contrast->maximum(); //[0, 1.0]
|
float valueToPercentage = float(value)/ui->horizontalSlider_contrast->maximum(); //[0, 1.0]
|
||||||
float percentageToGamma = pow(1/(valueToPercentage + 0.5), 7.);
|
float percentageToGamma = std::pow(1/(valueToPercentage + 0.5), 7.);
|
||||||
|
|
||||||
ui->label_image->setContrastGamma(percentageToGamma);
|
ui->label_image->setContrastGamma(percentageToGamma);
|
||||||
ui->label_contrast->setText(QString("Contrast(%) ") + QString::number(int(valueToPercentage * 100.)));
|
ui->label_contrast->setText(QString("Contrast(%) ") + QString::number(int(valueToPercentage * 100.)));
|
||||||
|
@ -18,7 +18,7 @@ class MainWindow : public QMainWindow
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit MainWindow(QWidget *parent = nullptr);
|
explicit MainWindow(QWidget *parent = nullptr, int argc=0, char *argv[]=nullptr);
|
||||||
~MainWindow();
|
~MainWindow();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
@ -71,6 +71,9 @@ private:
|
|||||||
void open_img_dir(bool&);
|
void open_img_dir(bool&);
|
||||||
void open_obj_file(bool&);
|
void open_obj_file(bool&);
|
||||||
|
|
||||||
|
void open_img_dir(char *);
|
||||||
|
void open_obj_file(char *);
|
||||||
|
|
||||||
void reupdate_img_list();
|
void reupdate_img_list();
|
||||||
|
|
||||||
Ui::MainWindow *ui;
|
Ui::MainWindow *ui;
|
||||||
|
Reference in New Issue
Block a user