kaggle Airbus Ship Detection Challenge 船舶检测实战(1):提取正样本

2023-10-31

报名参加了kaggle 8月的最新比赛 Airbus Ship Detection Challenge
发现有人已经开源把准确率提高到了84%
怀着“知其不可而为之“的勇气,还是把这个比赛当作了kaggle比赛的首战

第一天的工作:

提取正样本
从给定train中提取出正样本,减少训练样本,毕竟GPU不想选太好的
大概从10万张训练样本中提取了2.7万的正样本

import pandas as pd
import os
import numpy as np
import csv
import shutil

file_read = open("train_ship_segmentations.csv", "r")
reader = csv.reader(file_read)

fileHeader = ["ImageId", "EncodedPixels"] # 建立表头
file_write = open("positive_example.csv", "w")
writer = csv.writer(file_write)
writer.writerow(fileHeader)

positive_example_dic = {}

# 生成保存 positive examples 信息的 csv
for item in reader:
    if reader.line_num == 1: # 忽略第一行表头
        continue
    else:
        if item[1] != '':
            writer.writerow(item) 
            positive_example_dic[item[0]] = item[1] # 生成保存 positive examples 图片名的字典,不用列表,因为字典查找更快

file_read.close()
print('csv done!')

# 把 postive examples 移动到一个文件夹
original_sample_path = './train'
positive_sample_path = './positive_samples'
file_set = os.listdir(original_sample_path)
count = 0 # 记录positive example个数

for i in file_set:
    if i in positive_example_dic:
        example = os.path.join(original_sample_path,i)
        count += 1

        shutil.copy(example, positive_sample_path)

print('copy positive samples successfully, there are '+ str(count)+' postive examples!')

得到一个之保存正样本信息的 csv 和保存所有正样本图片的文件夹

第二天的工作:

处理 csv 为训练格式

因为毕竟是比赛,所以接下来的博客我会设置为私密模式,待比赛结束后一齐公布,如果有兴趣的同学可以留下联系方式,我们一起探讨
比赛目标:争取能超过84.7%那堆吧,哈哈哈哈哈哈
更新一下,提交了一个demo,效果已经超过目前所有kernel上提供的效果了,怎么优化估计会略让人头疼。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

kaggle Airbus Ship Detection Challenge 船舶检测实战(1):提取正样本 的相关文章

  • 有关上拉输入、下了输入、推挽输出、开漏输出、复用开漏输出、复用推挽输出以及、浮空输入、模拟输入区别

    有关上拉输入 下了输入 推挽输出 开漏输出 复用开漏输出 复用推挽输出以及 浮空输入 模拟输入区别 最近在网上看见一些人对STM32的八种方式的解释 说了一大堆 最后看完了 也不知道讲了什么 为了方便大家一目了然 本人总结如下 希望对大家有
  • Visio简单使用

    查看入门图表 深入了解并开始自行创建内容前 我们将展示 Visio 提供的多个入门图表 通过这种方式 可了解程序中的图表的观感 单击 类别 单击 流程图 现在请注意本步骤 单击 基本流程图 缩略图 下面介绍此对话的全部内容 如果有一些使用
  • 计算机网络基础知识 - 物理层

    第一章 概述 1 计算机网络 定义 计算机网络是指将不同地理位置 具有独立功能的多台计算机设备 通过通信线路连接起来 在网络操作系统 网络管理软件和网络通信协议的管理和协调下实现资源共享 信息传递 网络连接或远程访问等应用目的的计算机系统
  • 一个40岁程序员的经历

    有好几年没有上CSDN了 最近密码泄露事件 才让人想起久违的csdn 还好 通过注册邮箱顺利的找回了密码 十年前的时候 常在csdn潜水的老人们 现在还有人再来csdn吗 估计大部分都已经转行 当管理者或者当老板了吧 仍然做软件的可能只是极
  • 毕业设计成品网站集锦

    帮大家汇总下 今年比较热门的毕业设计选题 毕业设计成品网站的模板 适用性比较强 性价比也比较高 大家可以参考下 一 在线购物商城 題目 购物网站毕业设计 二 旅游网站 題目 基于web的旅游网站毕业设计
  • linux c语言 创建线程任务

    include
  • 使用AJAX修改把商品添加到购物车

    使用AJAX修改把商品添加到购物车 protected void ajaxAddItem HttpServletRequest req HttpServletResponse resp throws ServletException IOE
  • Vue2使用过渡标签transition使用动画

    注意 动画必须使用v if v show配合 1 Vue2配Css3实现 我们需要使用 过渡 标签
  • clickhouse There is no supertype for types UInt64, Float64

    There is no supertype for types UInt64 Float64 进行union all操作的时候 发现有两个字段名称相同 但是类型不同 所以出现了这个字段 如下 解决方案 统一转Float64类型 因人而异
  • 单片机毕业设计 遥控小车设计与实现

    文章目录 1 简介 2 主要器件与实现 2 1 电机驱动模块 2 2 蓝牙模块 2 3 蓝牙调试APP 3 实现效果 5 部分参考代码 6 最后 1 简介 Hi 大家好 今天向大家介绍一个学长做的单片机项目 基于单片机的遥控小车设计与实现
  • 注解@Lazy

    注解 Lazy 1 注解由来 Lazy 注解是 Spring 框架提供的一种机制 用于延迟初始化 Bean 它可以推迟 Bean 的初始化时机 从而优化应用程序的性能和资源利用 2 注解示例 java复制代码 Component Lazy
  • git回退--使用TortoiseGit小乌龟【我有一颗后悔药,服用说明图文详细,请对症下药】

    hi 你好 见到你很开心 我听到你的呼唤啦 你说你一不小心做错事了 我这刚好有一颗后悔药 说不定等你吃完 就能回到事情发生前啦 祝你好运o 下面我给大家介绍此款后悔药功效 请对症下药 药效 可穿越回到 之前某一次提交的时刻 本地与远端分支
  • SpringBoot中使用@Insert、@Update实现批量新增、更新

    一 使用 Insert批量新增 数据库原始表数据 数据层接口 批量新增 Insert
  • 有向图的拓扑排序

    给定一个 n 个点 m 条边的有向图 点的编号是 1 到 n 图中可能存在重边和自环 请输出任意一个该有向图的拓扑序列 如果拓扑序列不存在 则输出 1 若一个由图中所有点构成的序列 A 满足 对于图中的每条边 x y x 在 A 中都出现在
  • Explain各个字段的含义

    文章目录 TOC 1 expanin的结果示例 2 各个字段的含义 1 id 2 select type 3 table 4 type 重要 我们利用索引查找出来的记录显示 5 possible keys 6 key 7 key len 8
  • VUE3 之 生命周期函数

    目录 1 概述 2 VUE3 生命周期函数介绍 3 代码例子 4 综述 5 个人公众号 1 概述 老话说的好 天生我材必有用 千金散尽还复来 言归正传 今天我们来聊一下 VUE 的生命周期函数 所谓生命周期函数 就是在某一条件下被自动触发的
  • BLE MESH组网(一)简介和基本概念

    BLE MESH组网 一 BLE MESH简介 BLE MESH来源 BLE MESH用处 BLE MESH的通讯方式 管理洪水 市场内蓝牙设备支持 安全性 BLE MESH协议栈模型 BLE MESH基本概念 节点 元素 模型和状态 地址
  • vue+饿了么 点击当前元素之外收起弹框

    v clickoutside指令解决此问题 先引入 import Clickoutside from element ui src utils clickoutside export default directives Clickouts
  • linux系统部署jenkins详细教程

    一 Linux环境 1 下载war包 官网下载地址 https get jenkins io war stable 2 332 4 jenkins war 2 将war包上传至服务器 创建目录 home ubuntu jenkins 上传w

随机推荐

  • AndroidStudio的一些代码恢复功能

    我一个好兄弟 也是一个程序员 一天写代码的时候 他要删除一个apk文件 点击delete的时候 Androidstudio卡了一下 就出问题了 导致他的所有app下面的所有东西全没了 代码 jar包全没了 用过as的都知道 在as中删除文件
  • vulnhub-VULNOS: 2渗透测试靶场

    靶场下载地址VulnOS 2 VulnHub 靶场文件时virtualBox 虚拟机的靶场 vm无法导入 安装vbox之后直接双击靶场文件导入 之后设置网卡为默认桥接模式即可 开机 信息收集 使用nmap 192 168 2 0 24 进行
  • Dockerfile中的CMD和ENTRYPOINT有什么区别?

    本文翻译自 What is the difference between CMD and ENTRYPOINT in a Dockerfile In Dockerfiles there are two commands that look
  • Java正则工具类从地址中提取省市区

    Java正则工具类从地址中提取省市区 最近有个需求 从一串地址中提取出省市区 然后开始寻找解决方案 最终通过网上一些正则 再加上自己改动的 貌似弄成一个比较匹配的工具类 其中代码如下 有需要的可以参考下 其中一些自治区还有直辖市均已兼容 自
  • Linux基础命令

    Linux基础命令 1 ls和cd命令 2 修改文件权限 2 1初识权限 2 2修改权限 3 修改组别 4 查看日志 4 1tail 4 2head 4 3cat 4 4more 4 5less 4 6grep 5 编辑文本 6 创建软链
  • 日志类型汇总

    Slf4j slf4j 的全称是 Simple Loging Facade For Java 即它仅仅是一个为 Java 程序提供日志输出的统一接口 并不是一个具体的日志实现方案 就比如 JDBC 一样 只是一种规则而已 所以单独的 slf
  • python机器学习算法(赵志勇)学习笔记( Logistic Regression,LR模型)

    Logistic Regression 逻辑回归 分类算法是典型的监督学习 分类算法通过对训练样本的学习 得到从样本特征到样本的标签之间的映射关系 也被称为假设函数 之后可利用该假设函数对新数据进行分类 通过训练数据中的正负样本 学习样本特
  • vue遮罩加载动画(可以当作全屏弹窗)

    最终效果 加载动画部分 div span span span span span span span span span span div
  • 免费馅饼【暑期集训I题】【经典DP】

    这不是一道很废脑汁的题目 可以说和前面的数塔相同 只是题目讲的长了些而已 都说天上不会掉馅饼 但有一天gameboy正走在回家的小径上 忽然天上掉下大把大把的馅饼 说来gameboy的人品实在是太好了 这馅饼别处都不掉 就掉落在他身旁的10
  • android 卡片滑动详情页,在Mugeda中制作顺畅的左右滑动切换卡片效果的教程

    之前在做 刁角武汉 的时候对如何选择景点这个问题做了好几个方案 一个是画一张大地图 另一个是做垂直的列表选择 但我还是选择了左右滑动来切换景点 因为在多次尝试之后发现发现在手机屏上似乎不适合做可以上下左右滑动的大地图 而垂直列表在 Muge
  • QThread 事件循环

    对QThread的run函数描述如下 The run implementation is for a thread what the main entry point is for the application All code exec
  • matlab练习程序(最大中值滤波)

    clear clc width 3 xwidth width 1 2 imgn imread 1 bmp imshow imgn imgn double imgn m n size imgn imgn1 imgn z zeros 4 wid
  • java面经整理

    面试问题 一 Java基础 1 jdk1 7到jdk1 8HashMap发生了什么变化 底层 2 jdk1 7到jdk1 8虚拟机发生了什么变化 3 String StringBuilder StringBuffer 4 ArrayList
  • 为什么SELECT * 会导致查询效率低?

    无论在工作还是面试中 关于SQL中不要用 SELECT 都是大家听烂了的问题 虽说听烂了 但普遍理解还是在很浅的层面 并没有多少人去追根究底 探究其原理 废话不多说 本文带你深入了解一下 SELECT 效率低的原因及场景 一 效率低的原因
  • 用Python和selenium下载pdf文件

    今天要从国外的网站上下载一个学术会议的几百篇pdf文献 具体网址为https www onepetro org conferences SPE 17ADIP all start 0 rows 700 这个网站需要登录后手动一篇一篇的下载 非
  • 使用ssh直连docker容器的方法 :解决Connection refused报错

    以root權限進入到docker后重啓ssh服務即可重啓ssh服務 docker exec it u root 容器号 bin bash 重啓ssh服務 service ssh restart
  • Apache Flink SQL 详解与实践

    问题导读1 为何会有Flink SQL 2 本文哪些地方涉及Flink 1 7 4 如何定义源 sources 和接收器 sinks 5 Flink SQL本文介绍了哪些sql 6 将数据格式化为正确的格式以便进一步处理 7 如何监控Fli
  • Qt 多线程基础及线程使用方式

    文章目录 Qt 多线程操作 2 线程类QThread 3 多线程使用 方式一 4 多线程使用 方式二 5 Qt 线程池的使用 Qt 多线程操作 应用程序在某些情况下需要处理比较复杂的逻辑 如果只有一个线程去处理 就会导致窗口卡顿 无法处理用
  • 在上传文件的同时 传递参数 (ajax上传文件并传值给后台)

    之前用的ajax方法上传文件 结果这边需要对上传文件进行分类和关键字处理 话不多说直接上代码了 前端html以及js部分 fieldset legend 文件信息 legend table class table style width 1
  • kaggle Airbus Ship Detection Challenge 船舶检测实战(1):提取正样本

    报名参加了kaggle 8月的最新比赛 Airbus Ship Detection Challenge 发现有人已经开源把准确率提高到了84 怀着 知其不可而为之 的勇气 还是把这个比赛当作了kaggle比赛的首战 第一天的工作 提取正样本