Qt 从图片中截取到需要的部分

努力的草根 2015-08-11 11:39:14
我在qgraphicsView放了一张图片,然后我想通过鼠标这张图片上画一个形状然后将这个形状里面的图片保存下来
...全文
2354 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
void MainWindow::caculate()
{
static int iCount = 1;
while(!_bStopped)
{
cv::Mat frame;
cv::Mat frameCalibration;

_videoCapture.read(frame);
if(_bCut)
{
_bCut = false;
cv::imwrite((QCoreApplication::applicationDirPath()+"/../pictures/"+QString::number(iCount)+".jpg").toStdString(), frame);
iCount++;
}
if(iCount > 20)
{
_timer->stop();
cv::destroyAllWindows();
return;
}
int64 start = QDateTime::currentMSecsSinceEpoch();
cv::remap(frame, frameCalibration, map1, map2, cv::INTER_LINEAR);
int64 end = QDateTime::currentMSecsSinceEpoch();
qDebug()<<start <<end <<end-start;

// cv::imshow("cut", frameCalibration);
cv::imshow("cut", frame);
cv::waitKey(1);
}
}

void MainWindow::on_pushButton_clicked()
{
//_bStopped = !_bStopped;
_bCut = true;
}
fyn272064949 2015-08-13
  • 打赏
  • 举报
回复
void Widget::mousePressEvent(QMouseEvent *e) { m_Path = QPainterPath(e->pos()); isEnd = false; } void Widget::mouseMoveEvent(QMouseEvent *e) { m_Path.lineTo(e->pos()); update(); } void Widget::mouseReleaseEvent(QMouseEvent *e) { m_Path.closeSubpath(); update(); isEnd = true; } void Widget::paintEvent(QPaintEvent *) { QPainter p(this); QImage temp("a.jpg"); p.drawImage(this->rect(), temp, temp.rect()); p.drawPath(m_Path); if(isEnd) { QPainterPath tempPath = m_Path; tempPath.translate(-tempPath.boundingRect().topLeft()); QImage img(m_Path.boundingRect().size().toSize(), QImage::Format_ARGB32); QPainter imgPainter(&img); imgPainter.setBackgroundMode(Qt::TransparentMode); QImage temp2 = temp.scaled(this->size()); temp2 = temp2.copy(m_Path.boundingRect().toRect()); imgPainter.fillPath(tempPath, QBrush(temp2)); img.save("temp.png"); isEnd = false; } } 我为何这么吊???? 代码没有优化, 自己去优化吧
彩阳 2015-08-11
  • 打赏
  • 举报
回复 1
QPixmap QPixmap::copy(int x, int y, int width, int height) const
QImage QImage::copy(int x, int y, int width, int height) const
随你所用。
基于AAMCWOA优化的LSTM-Adaboost时间序列预测模型研究(Matlab代码实现)内容概要:本文围绕基于AAMCWOA优化的LSTM-Adaboost时间序列预测模型展开研究,提出了一种结合改进型鲸鱼优化算法(AAMCWOA)对LSTM网络结构参数进行优化,并融合Adaboost集成学习方法提升预测精度的技术框架。该模型在Matlab平台上实现,适用于各类复杂非线性时间序列预测任务,如风电、光伏、负荷、股价等领域的预测。文详细阐述了LSTM网络原理、Adaboost集成机制、AAMCWOA算法的改进策略(包括自适应权重和混沌搜索),并通过实验验证了该混合模型相较于传统单一模型在预测精度和稳定性方面的优越性。; 适合人群:具备一定机器学习与时间序列分析基础,熟悉Matlab编程,从事科研或工程应用的研究生、科研人员及算法工程师;尤其适合关注优化算法与深度学习融合应用的技术人员。; 使用场景及目标:①应用于能源、金融、交通等领域的时间序列预测任务;②为提升预测模型性能提供一种有效的优化思路与实现方案;③支持科研复现与算法改进,推动智能预测技术的发展。; 阅读建议:建议读者结合提供的Matlab代码深入理解模型构建流程,重点关注AAMCWOA算法的优化机制与LSTM-Adaboost集成策略的设计逻辑,鼓励在实际数据集上进行测试与调参,以掌握模型泛化能力与调优技巧。
基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计),个人经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为毕业设计、课程设计、期末大作业,代码资料完整,下载可用。 基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾火焰烟雾检测源码+训练好的模型(毕业设计)基于YOLOV8的火灾

21,472

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧