- Megtartotta Európában a 7500 mAh-t az Oppo
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy S21 Ultra - vákuumcsomagolás
- Samsung Galaxy Note20 Ultra - a tollnak nincs ellenfele
- Nincs több titok: íme, a Samsung Galaxy TriFold!
- A Galaxy S26-tal együtt késik a One UI 8.5
- Android alkalmazások - szoftver kibeszélő topik
- Akciófigyelő: kedvezménnyel nyit az Earfun Air Pro 4+
- Yettel topik
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
-
Mobilarena

Új hozzászólás Aktív témák
-
Erwinke
aktív tag
válasz
Erwinke
#10958
üzenetére
Elnézést, rosszat küldtem ...
// színcsatornák korrigálása
while ((U_avg > 0.1) && (V_avg > 0.1)) {
if(U_avg > V_avg){
//egyik verzió a korrigálásra
for (int i = 0; i <image.rows; i++){
for (int j = 0; j < image.cols; j++){
if(image.at<Vec3b>(i,j)[0]+1 <= 255){
image.at<Vec3b>(i,j)[0] = image.at<Vec3b>(i,j)[0]+1;
} // az eredeti képen lévő színcsatornákat korrigáljuk
}
}
}else{
for (int i = 0; i <image.rows; i++){
for (int j = 0; j < image.cols; j++){
if (image.at<Vec3b>(i,j)[2]+1 <= 255){
image.at<Vec3b>(i,j)[2] = image.at<Vec3b>(i,j)[2]+1;
}
}
}
}
//másik verzió a korrigálásra
/*
if(U_avg > V_avg){
for (int i = 0; i <modded.rows; i++){
for (int j = 0; j < modded.cols; j++){
modded.at<Vec3b>(i,j)[0] = modded.at<Vec3b>(i,j)[1]+1;
// az YUV színterű képet korrigáljuk (nem működik)
}
}
}else{
for (int i = 0; i <modded.rows; i++){
for (int j = 0; j < modded.cols; j++){
modded.at<Vec3b>(i,j)[2] = modded.at<Vec3b>(i,j)[1]-1;
}
}
}
}*/
/*_______________________________________________________________________________________________________*/
/*
* egyik verzió a szürke pixelek újraszámolására (ugyan azokat a pixeleket vesszük figyelembe)
for (int k = 0; k < counter; k++){
// a rekord tömbből keressük ki a pixeleket
//double b = image.at<Vec3b>(arr[counter].x,arr[counter].y)[0];
//double g = image.at<Vec3b>(arr[counter].x,arr[counter].y)[1];
//double r = image.at<Vec3b>(arr[counter].x,arr[counter].y)[2];
//double y = ((0.299*r)+(0.587*g)+(0.114*g));
double u = (modded.at<Vec3b>(arr[counter].x,arr[counter].y)[1])-128;
double v = (modded.at<Vec3b>(arr[counter].x,arr[counter].y)[2])-128;
U_avg += abs(u);
V_avg += abs(v);
}*/
// másik verzió a szürke pixelek újraszámolására (nem feltétlenül ugyan azokat a pixeleket vesszük figyelembe)
// újra keressük a szürke pixeleket
cvtColor(image, modded, CV_BGR2YUV);
counter = 0;
for (int i = rows*2; i < rows*3; i++) {
for (int j = cols*2; j < cols*3; j++) {
double y = modded.at<Vec3b>(i,j)[0];
double u = (modded.at<Vec3b>(i,j)[1])-128;
double v = (modded.at<Vec3b>(i,j)[2])-128;
double tmp = (abs(u)+abs(v))/y;
double aa = 0.2;
if (tmp < aa){
arr[counter] = {i,j};
U_avg += abs(u);
V_avg += abs(v);
counter++;
}
}
}
U_avg = U_avg/counter;
V_avg = V_avg/counter;
// önellenőrzés, U és V csatornák átlaga
cout << (int)U_avg << ", " << (int)V_avg << endl;
}
cvtColor(modded, modded, CV_YUV2BGR);// visszakonvertálás
imshow("image",image);
namedWindow("image",CV_WINDOW_FREERATIO);
imshow("modded", modded);
namedWindow("modded", CV_WINDOW_FREERATIO);
/*
cout << to_string((int)Y) << "\n";
cout << to_string((int)U) << "\n";
cout << to_string((int)V) << "\n";*/
/*
vector<Mat> channels;
vector<Mat> separatedChannels = showChannels(channels);
namedWindow("Blue", CV_WINDOW_FREERATIO);
imshow("Blue", separatedChannels[0]);
namedWindow("Green", CV_WINDOW_FREERATIO);
imshow("Green", separatedChannels[1]);
namedWindow("Red", CV_WINDOW_FREERATIO);
imshow("Red", separatedChannels[2]);
*/
waitKey(0); -
Erwinke
aktív tag
Szép napot.
Iteral White Balancot kéne leprogramoznunk órára. Megvan a program csak rosszul konvertálja át a képet és nem tudunk rájönni, hogy miért. Nem tudom ez a szakterületük-e, de egy próbát megér. Köszönöm a segítségüket./********************************************************************************
** Form generated from reading UI file 'mainwindow.ui'
**
** Created by: Qt User Interface Compiler version 5.8.0
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINWINDOW_H
#define UI_MAINWINDOW_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QComboBox>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QWidget>
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QComboBox *comboBox;
QPushButton *pushButton;
QPushButton *pushButton_2;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QStringLiteral("MainWindow"));
MainWindow->resize(394, 252);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QStringLiteral("centralWidget"));
comboBox = new QComboBox(centralWidget);
comboBox->setObjectName(QStringLiteral("comboBox"));
comboBox->setGeometry(QRect(30, 60, 181, 26));
pushButton = new QPushButton(centralWidget);
pushButton->setObjectName(QStringLiteral("pushButton"));
pushButton->setGeometry(QRect(280, 60, 80, 26));
pushButton_2 = new QPushButton(centralWidget);
pushButton_2->setObjectName(QStringLiteral("pushButton_2"));
pushButton_2->setGeometry(QRect(280, 210, 80, 26));
MainWindow->setCentralWidget(centralWidget);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", Q_NULLPTR));
comboBox->clear();
comboBox->insertItems(0, QStringList()
<< QApplication::translate("MainWindow", "White patch", Q_NULLPTR)
<< QApplication::translate("MainWindow", "Gray world", Q_NULLPTR)
<< QApplication::translate("MainWindow", "Iterative white balance", Q_NULLPTR)
);
pushButton->setText(QApplication::translate("MainWindow", "Tall\303\263z\303\241s", Q_NULLPTR));
pushButton_2->setText(QApplication::translate("MainWindow", "Ind\303\255t\303\241s", Q_NULLPTR));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Bivaly Lenovo T14 gen5 (Core Ultra 7 32Gb DDR5 1 Tb SSD) laptopom eladó 2 év gyártói garanciával!
- Insta360 X4 akciókamera Adventure Bundle
- Quadral Chromium Style 35, polchangfal páros
- Dell 3500 üzleti 8.generációs laptop WIN11, 1 év garancia, 256GB SSD, 16GB memória
- Gigabyte AORUS GeForce RTX 5080 MASTER ICE 16GB GDDR7
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 9060 XT 8GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 Pro 256GB Sierra Blue 1ÉV GARANCIA -Kártyafüggetlen, MS3743
- Lenovo ThinkPad T14 Gen1 Ryzen5 4650U
- BESZÁMÍTÁS! Asus H370-A i5 9600K 16GB DDR4 512GB SSD RTX 2060 Super 8GB Zalman T7 Zalman 500W
- Vállalom FRP Lock os telefonok javítását ingyen kiszálással és akár helyszíni javittással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest




