[PYTHON] Introduction du package de collecte automatique d'images "icrawler" (0.6.3) qui peut être utilisé pendant l'apprentissage automatique

Présentation d'un package qui collecte des images gênantes par apprentissage en profondeur à l'aide d'images.

Vous pouvez collecter des images à partir de moteurs de recherche, publier des images à partir de SNS et télécharger automatiquement des images à partir de pages Web.

Il semble que la fonction pour google ne puisse pas encore être utilisée en raison du changement de spécification du moteur de recherche d'images de google Le robot d'exploration de Google a été corrigé 4 jours avant la publication de cet article (10/10/2020), donc je pense qu'il sera bientôt amélioré.

Télécharger depuis le moteur de recherche

Télécharger depuis bing, baidu

from icrawler.builtin import BaiduImageCrawler, BingImageCrawler, GoogleImageCrawler


bing_crawler = BingImageCrawler(downloader_threads=4,storage={'root_dir': 'C:\\Users\\Desktop\\0\\your_dir'})
bing_crawler.crawl(keyword='cat', filters=None, offset=0, max_num=10)

Spécifiez la destination d'enregistrement de l'image dans le stockage Si vous spécifiez un caractère au lieu d'un chemin après rooot_dir, un fichier avec le caractère spécifié sera automatiquement créé dans le répertoire de travail et y sera collecté.

Spécifiez le mot de recherche avec la touche

baidu_crawler = BaiduImageCrawler(storage={'root_dir': 'your_image_dir'})
baidu_crawler.crawl(keyword='cat', offset=0, max_num=100,min_size=(200,200), max_size=None)

Lorsque max_num est spécifié comme 1000, ce sera DL jusqu'à environ 800 Le comportement lorsque le même répertoire est spécifié est ignoré lorsque le nom et l'extension du fichier sont couverts.

Télécharger depuis le site Web

Il télécharge tout en recherchant des images sur le site Web à une extrémité Besoin de trier après le téléchargement

from icrawler.builtin import GreedyImageCrawler

greedy_crawler = GreedyImageCrawler(storage={'root_dir': 'di'})
greedy_crawler.crawl(domains='https://URL avec l'image que vous souhaitez télécharger.html', max_num=10,min_size=None, max_size=None)

Télécharger depuis SNS (Flickr)

Télécharger des images basées sur les résultats de recherche Flickr Nécessite une simple inscription d'utilisateur telle que l'adresse e-mail et le nom (vous ne pouvez pas confirmer avec google mail?)

Peut être utilisé en demandant une clé API après la connexion

Demande d'API

Entrez le but non lucratif, le but de l'utilisation, etc. et exécutez le code après avoir émis la clé API

image.png

from datetime import date
from icrawler.builtin import FlickrImageCrawler

flickr_crawler = FlickrImageCrawler('Clé émise ici',
                                    storage={'root_dir': 'image_dir'})
flickr_crawler.crawl(max_num=100, tags='cat,dog',
                     min_upload_date=date(2019, 5, 1))

Je n'ai pas confirmé l'opération, mais dans le cas de google

Jusqu'à il y a quelque temps, le problème était que seuls 100 éléments pouvaient être téléchargés, mais le téléchargement lui-même était possible. Maintenant je ne peux même pas vérifier le téléchargement

from icrawler.builtin import BaiduImageCrawler, BingImageCrawler, GoogleImageCrawler

google_crawler = GoogleImageCrawler(
    feeder_threads=1,
    parser_threads=1,
    downloader_threads=4,
    storage={'root_dir': 'er'})

google_crawler.crawl(keyword='cat', offset=0, max_num=10,
                     min_size=(200,200), max_size=None, file_idx_offset=0)

c'est tout

Site de référence Welcome to icrawler

Recommended Posts

Introduction du package de collecte automatique d'images "icrawler" (0.6.3) qui peut être utilisé pendant l'apprentissage automatique
Enregistrement d'image ANT qui peut être utilisé en 5 minutes
Présentation et fonctionnalités utiles de scikit-learn qui peuvent également être utilisées pour l'apprentissage en profondeur
[Python] Introduction au scraping WEB | Résumé des méthodes pouvant être utilisées avec webdriver
Remplissage facile des données pouvant être utilisées dans le traitement du langage naturel
[Apprentissage automatique] Liste des packages fréquemment utilisés
[Python3] Code qui peut être utilisé lorsque vous souhaitez modifier l'extension d'une image à la fois
Notes personnelles des opérations liées aux pandas qui peuvent être utilisées dans la pratique
Programme d'installation facile et programme de mise à jour automatique pouvant être utilisé dans n'importe quelle langue
Version gratuite de DataRobot! ?? Introduction à «PyCaret», une bibliothèque qui automatise l'apprentissage automatique
Résumé des sources de données scikit-learn pouvant être utilisées lors de la rédaction d'articles d'analyse
L'apprentissage automatique peut-il prédire les quadrilatères parallèles? (1) Peut-il être inséré à l'extérieur?
Types de fichiers pouvant être utilisés avec Go
Fonctions pouvant être utilisées dans l'instruction for
Mémo d'étude Python & Machine Learning ②: Introduction de la bibliothèque
Divulgation complète des méthodes utilisées dans l'apprentissage automatique
Liste des liens que les débutants en apprentissage automatique apprennent
Résumé des fonctions d'évaluation utilisées dans l'apprentissage automatique
[Français] scikit-learn 0.18 Introduction de l'apprentissage automatique par le didacticiel scikit-learn
Résumé des méthodes d'analyse de données statistiques utilisant Python qui peuvent être utilisées en entreprise
Script Python de collection d'images pour créer des ensembles de données pour l'apprentissage automatique
Algorithmes de base utilisables par les pros de la compétition
À propos du prétraitement des données des systèmes utilisant l'apprentissage automatique
Notes sur les connaissances Python utilisables avec AtCoder
[Django] À propos des utilisateurs pouvant être utilisés sur un modèle
Cours de Deep Learning pouvant être écrasé sur place
Peut être utilisé avec AtCoder! Une collection de techniques pour dessiner du code court en Python!
[Atcoder] [C ++] J'ai fait un outil d'automatisation de test qui peut être utilisé pendant le concours