本文整理汇总了Java中net.semanticmetadata.lire.utils.FileUtils.getAllImages方法的典型用法代码示例。如果您正苦于以下问题:Java FileUtils.getAllImages方法的具体用法?Java FileUtils.getAllImages怎么用?Java FileUtils.getAllImages使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.semanticmetadata.lire.utils.FileUtils
的用法示例。
在下文中一共展示了FileUtils.getAllImages方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testIndex
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndex() throws IOException {
// indexing
System.out.println("-< Getting files to index >--------------");
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), true);
System.out.println("-< Indexing " + images.size() + " files >--------------");
indexFiles(images, builder, indexPath);
// in case of "bag of visual words" ...
// SiftFeatureHistogramBuilder sh1 = new SiftFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(indexPath))), 200, 8000);
// sh1.index();
// SurfFeatureHistogramBuilder sh = new SurfFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(indexPath))), 200, 8000);
// sh.index();
// MSERFeatureHistogramBuilder sh = new MSERFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(indexPath))), 200, 8000);
// sh.index();
System.out.println("-< Indexing finished >--------------");
}
示例2: indexFiles
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
private void indexFiles(String dir, String index, int featureIndex, boolean createNewIndex) throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(dir), true);
IndexWriter iw = LuceneUtils.createIndexWriter(index, createNewIndex, LuceneUtils.AnalyzerType.WhitespaceAnalyzer);
// select one feature for the large index:
int count = 0;
long ms = System.currentTimeMillis();
DocumentBuilder builder = new ChainedDocumentBuilder();
((ChainedDocumentBuilder) builder).addBuilder(builders[featureIndex]);
// ((ChainedDocumentBuilder) builder).addBuilder(builders[0]);
for (Iterator<String> iterator = images.iterator(); iterator.hasNext(); ) {
count++;
if (count > 100 && count % 5000 == 0) {
System.out.println(count + " files indexed. " + (System.currentTimeMillis() - ms) / (count) + " ms per file");
}
String file = iterator.next();
try {
iw.addDocument(builder.createDocument(new FileInputStream(file), file));
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
iw.close();
}
示例3: testReUse
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testReUse() throws IOException, IllegalAccessException, InstantiationException {
ArrayList<String> testFiles = FileUtils.getAllImages(new File("testdata/ferrari"), true);
for (Class c : featureClasses) {
LireFeature f1 = (LireFeature) c.newInstance();
System.out.println(c.getName());
for (String testFile : testFiles) {
f1.extract(ImageIO.read(new File(testFile)));
LireFeature f2 = (LireFeature) c.newInstance();
f2.extract(ImageIO.read(new File(testFile)));
// System.out.println(Arrays.toString(f1.getDoubleHistogram()));
// System.out.println(Arrays.toString(f2.getDoubleHistogram()));
assertEquals(f2.getDistance(f1), 0d, 0.000000001);
f2.setByteArrayRepresentation(f1.getByteArrayRepresentation());
assertEquals(f2.getDistance(f1), 0d, 0.000000001);
byte[] tmp = new byte[1024*100];
Arrays.fill(tmp, (byte) 0x000F);
byte[] bytes = f1.getByteArrayRepresentation();
System.arraycopy(bytes, 0, tmp, 12, bytes.length);
f2.setByteArrayRepresentation(tmp, 12, bytes.length);
assertEquals(f2.getDistance(f1), 0d, 0.000000001);
}
}
}
示例4: testIndexSurfHistogram
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndexSurfHistogram() throws IOException {
// index all files
System.out.println("-< Getting files to index >--------------");
List<String> images = FileUtils.getAllImages(new File(directory), true);
System.out.println("-< Indexing " + images.size() + " files >--------------");
indexFiles(images, index);
// create histograms
// System.out.println("-< Creating SIFT based histograms >--------------");
// SiftFeatureHistogramBuilder siftFeatureHistogramBuilder = new SiftFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(index))), numSamples, clusters);
// siftFeatureHistogramBuilder.index();
System.out.println("-< Creating SURF based histograms >--------------");
SurfFeatureHistogramBuilder surfFeatureHistogramBuilder = new SurfFeatureHistogramBuilder(DirectoryReader.open(FSDirectory.open(new File(index))), numSamples, clusters);
surfFeatureHistogramBuilder.index();
// System.out.println("-< Creating MSER based histograms >--------------");
// MSERFeatureHistogramBuilder mserFeatureHistogramBuilder = new MSERFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(index))), numSamples, clusters);
// mserFeatureHistogramBuilder.index();
// System.out.println("-< Finished >--------------");
}
示例5: testCreateCEDDIndex
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testCreateCEDDIndex() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File("E:/temp/flickrphotos/flickrphotos"), true);
ChainedDocumentBuilder builder = new ChainedDocumentBuilder();
builder.addBuilder(DocumentBuilderFactory.getCEDDDocumentBuilder());
IndexWriter iw = LuceneUtils.createIndexWriter(indexPath + "-cedd", true);
int count = 0;
long ms = System.currentTimeMillis();
for (String identifier : images) {
try {
Document doc = builder.createDocument(new FileInputStream(identifier), identifier);
iw.addDocument(doc);
} catch (Exception e) {
System.err.print("\n ;-( ");//e.printStackTrace();
}
count++;
if (count % 1000 == 0) System.out.println((100 * count) / images.size() + "% ");
}
System.out.println("Time taken: " + ((System.currentTimeMillis() - ms) / testFiles.length) + " ms");
iw.commit();
iw.close();
}
示例6: testSiftIndexing
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testSiftIndexing() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), true);
ChainedDocumentBuilder db = new ChainedDocumentBuilder();
db.addBuilder(new SiftDocumentBuilder());
db.addBuilder(DocumentBuilderFactory.getCEDDDocumentBuilder());
IndexWriter iw = LuceneUtils.createIndexWriter("sift-idx", true);
for (int i = 0; i < images.size(); i++) {
// int sampleQuery = sampleQueries[i];
// String s = testExtensive + "/" + sampleQuery + ".jpg";
iw.addDocument(db.createDocument(new FileInputStream(images.get(i)), images.get(i)));
if (i % 100 == 99) System.out.print(".");
if (i % 1000 == 999) System.out.print(" ~ " + i + " files indexed\n");
if (i > 1000) break;
}
System.out.println("");
iw.close();
}
示例7: testSurfIndexing
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testSurfIndexing() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), true);
ChainedDocumentBuilder db = new ChainedDocumentBuilder();
db.addBuilder(new SurfDocumentBuilder());
IndexWriter iw = LuceneUtils.createIndexWriter("sift-idx", true);
for (int i = 0; i < images.size(); i++) {
// int sampleQuery = sampleQueries[i];
// String s = testExtensive + "/" + sampleQuery + ".jpg";
iw.addDocument(db.createDocument(new FileInputStream(images.get(i)), images.get(i)));
if (i % 100 == 99) System.out.print(".");
if (i % 1000 == 999) System.out.print(" ~ " + i + " files indexed\n");
if (i > 1000) break;
}
System.out.println("");
iw.close();
}
示例8: indexFiles
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
@SuppressWarnings("unused")
private Document indexFiles() throws IOException {
System.out.println("---< indexing >-------------------------");
int count = 0;
DocumentBuilder builder = getDocumentBuilder();
ArrayList<String> allImages = FileUtils.getAllImages(new File("wang-1000"), true);
IndexWriter iw = LuceneUtils.createIndexWriter(indexPath, true);
Document document = null;
for (Iterator<String> iterator = allImages.iterator(); iterator.hasNext(); ) {
String filename = iterator.next();
BufferedImage image = ImageIO.read(new FileInputStream(filename));
document = builder.createDocument(image, filename);
iw.addDocument(document);
count++;
if (count % 50 == 0)
System.out.println("finished " + (count * 100) / allImages.size() + "% of the images.");
}
iw.close();
return document;
}
示例9: testIndexing
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndexing() throws IOException {
List<String> allImages = FileUtils.getAllImages(new File(filePath), true);
System.out.println("Found " + allImages.size() + " files.");
IndexWriter iw = LuceneUtils.createIndexWriter(indexPath, true);
// ParallelIndexer pix = new ParallelIndexer(allImages, new MirFlickrDocumentBuilder());
ParallelIndexer pix = new ParallelIndexer(allImages, new MetadataBuilder());
new Thread(pix).start();
Document doc;
javax.swing.ProgressMonitor pm = new javax.swing.ProgressMonitor(null, "Indexing ...", "", 0, allImages.size());
int count = 0;
while ((doc = pix.getNext()) != null) {
iw.addDocument(doc);
pm.setProgress(++count);
pm.setNote(count + " documents finished");
}
iw.close();
}
示例10: testIndex
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndex() throws IOException {
System.out.println("-< Getting files to index >--------------");
ArrayList<String> images = FileUtils.getAllImages(new File(testFiles), true);
System.out.println("-< Indexing " + images.size() + " files >--------------");
indexFiles(images, builder, testIndex);
System.out.println("-< Indexing finished >--------------");
}
示例11: testIndexingSpeed
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndexingSpeed() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), false);
// testFeatureSpeed(images, new AutoColorCorrelogram());
// testFeatureSpeed(images, new CEDD());
// testFeatureSpeed(images, new FCTH());
// testFeatureSpeed(images, new JCD());
testFeatureSpeed(images, new SPACC());
testFeatureSpeed(images, new SPCEDD());
testFeatureSpeed(images, new SPFCTH());
testFeatureSpeed(images, new SPJCD());
}
示例12: testSearchSpeed
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testSearchSpeed() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), false);
testSearchSpeed(images, AutoColorCorrelogram.class);
testSearchSpeed(images, CEDD.class);
testSearchSpeed(images, FCTH.class);
testSearchSpeed(images, JCD.class);
testSearchSpeed(images, SPACC.class);
testSearchSpeed(images, SPCEDD.class);
testSearchSpeed(images, SPFCTH.class);
testSearchSpeed(images, SPJCD.class);
}
示例13: testIndexing
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndexing() throws IOException {
ChainedDocumentBuilder cb = new ChainedDocumentBuilder();
cb.addBuilder(new SurfDocumentBuilder());
cb.addBuilder(DocumentBuilderFactory.getColorLayoutBuilder());
System.out.println("-< Getting files to index >--------------");
ArrayList<String> images = FileUtils.getAllImages(new File(dataPath), true);
System.out.println("-< Indexing " + images.size() + " files >--------------");
IndexWriter iw = LuceneUtils.createIndexWriter(indexPath, true);
int count = 0;
long time = System.currentTimeMillis();
for (String identifier : images) {
Document doc = cb.createDocument(new FileInputStream(identifier), identifier);
iw.addDocument(doc);
count++;
if (count % 100 == 0) System.out.println(count + " files indexed.");
// if (count == 200) break;
}
long timeTaken = (System.currentTimeMillis() - time);
float sec = ((float) timeTaken) / 1000f;
System.out.println(sec + " seconds taken, " + (timeTaken / count) + " ms per image.");
iw.commit();
iw.close();
System.out.println("-< Local features are getting clustered >--------------");
SurfFeatureHistogramBuilder sh = new SurfFeatureHistogramBuilder(IndexReader.open(FSDirectory.open(new File(indexPath))), 200, 8000);
sh.index();
System.out.println("-< Indexing finished >--------------");
}
示例14: testCreateCEDDIndex
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testCreateCEDDIndex() throws IOException {
ArrayList<String> images = FileUtils.getAllImages(new File(testExtensive), true);
DocumentBuilder builder = DocumentBuilderFactory.getCEDDDocumentBuilder();
IndexWriter iw = LuceneUtils.createIndexWriter("wang-cedd", true);
for (String identifier : images) {
Document doc = builder.createDocument(new FileInputStream(identifier), identifier);
iw.addDocument(doc);
}
iw.close();
}
示例15: testIndexLarge
import net.semanticmetadata.lire.utils.FileUtils; //导入方法依赖的package包/类
public void testIndexLarge() throws IOException {
// ArrayList<String> images = FileUtils.getAllImages(new File("C:\\Temp\\testImagelogos"), true);
ArrayList<String> images = FileUtils.getAllImages(new File("C:\\Java\\Projects\\LireSVN\\testdata\\flickr-10000"), false);
IndexWriter iw = LuceneUtils.createIndexWriter("index-large", true, LuceneUtils.AnalyzerType.WhitespaceAnalyzer);
// select one feature for the large index:
int featureIndex = 13;
int count = 0;
long ms = System.currentTimeMillis();
DocumentBuilder builder = new ChainedDocumentBuilder();
((ChainedDocumentBuilder) builder).addBuilder(builders[featureIndex]);
// ((ChainedDocumentBuilder) builder).addBuilder(builders[0]);
for (Iterator<String> iterator = images.iterator(); iterator.hasNext(); ) {
count++;
if (count > 100 && count % 500 == 0) {
System.out.println(count + " files indexed. " + (System.currentTimeMillis() - ms) / (count) + " ms per file");
}
String file = iterator.next();
try {
// try to trim the image first ....
// BufferedImage img = ImageUtils.trimWhiteSpace(ImageIO.read(new FileInputStream(file)));
// iw.addDocument(builder.createDocument(img, file));
iw.addDocument(builder.createDocument(new FileInputStream(file), file));
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
iw.close();
}