Skip to content

Commit 21d9a4e

Browse files
committed
Removed custom initializer
1 parent a9b39d3 commit 21d9a4e

File tree

4 files changed

+19
-68
lines changed

4 files changed

+19
-68
lines changed

tensorflow_lite_support/ios/task/processor/sources/TFLClassificationResult.h

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -47,42 +47,13 @@ NS_ASSUME_NONNULL_BEGIN
4747
* probability). */
4848
@property(nonatomic, copy) NSArray<TFLCategory *> *categories;
4949

50-
/**
51-
* Initializes an instance of TFLClassifications for an image classifier head with given index and
52-
* list of predicted categories.
53-
*
54-
* @param categories list of predicted categories for classification head that should be
55-
* represeented by the initialized TFLClassification.
56-
* @param headIndex index of the image classifier head this instance of TFLClassifications should
57-
* represent.
58-
* @return An instance of TFLClassifications.
59-
*/
60-
- (instancetype)initWithCategories:(NSArray<TFLCategory *> *)categories headIndex:(int)headIndex;
61-
62-
- (instancetype)init NS_UNAVAILABLE;
63-
64-
+ (instancetype)new NS_UNAVAILABLE;
65-
6650
@end
6751

6852
/** Encapsulates results of any classification task. */
6953
@interface TFLClassificationResult : NSObject
7054

7155
@property(nonatomic, copy) NSArray<TFLClassifications *> *classifications;
7256

73-
/**
74-
* Initializes an instance of TFLClassifications for an image classifier head with given index and
75-
* list of predicted categories.
76-
*
77-
* @param classifications list containing results of image classifier heads.
78-
* @return An instance of TFLClassifications.
79-
*/
80-
- (instancetype)initWithClassifications:(NSArray<TFLClassifications *> *)classifications;
81-
82-
- (instancetype)init NS_UNAVAILABLE;
83-
84-
+ (instancetype)new NS_UNAVAILABLE;
85-
8657
@end
8758

8859
NS_ASSUME_NONNULL_END

tensorflow_lite_support/ios/task/processor/sources/TFLClassificationResult.m

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -25,33 +25,9 @@ @implementation TFLClassifications
2525
@synthesize headIndex;
2626
@synthesize categories;
2727

28-
- (instancetype)initWithCategories:(NSArray<TFLCategory *> *)categories headIndex:(int)headIndex {
29-
if (!categories) {
30-
return nil;
31-
}
32-
self = [super init];
33-
if (self) {
34-
self.categories = categories;
35-
self.headIndex = headIndex;
36-
}
37-
return self;
38-
}
3928
@end
4029

4130
@implementation TFLClassificationResult
4231
@synthesize classifications;
4332

44-
- (instancetype)initWithClassifications:(NSArray<TFLClassifications *> *)classifications {
45-
if (!classifications) {
46-
return nil;
47-
}
48-
self = [super init];
49-
50-
if (self) {
51-
self.classifications = classifications;
52-
}
53-
54-
return self;
55-
}
56-
5733
@end

tensorflow_lite_support/ios/task/processor/utils/sources/TFLClassificationUtils.m

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,15 @@ + (TFLClassificationResult *)classificationResultFromCClassificationResults:
4242
resultCategory.classIndex = (NSInteger)cCategory.index;
4343
[classes addObject:resultCategory];
4444
}
45-
46-
[classificationHeads addObject:[[TFLClassifications alloc] initWithCategories:classes
47-
headIndex:i]];
45+
TFLClassifications *classificationHead = [[TFLClassifications alloc] init];
46+
classificationHead.categories = classes;
47+
classificationHead.headIndex = i;
48+
[classificationHeads addObject:classificationHead];
4849
}
4950

50-
return [[TFLClassificationResult alloc] initWithClassifications:classificationHeads];
51+
TFLClassificationResult *classificationResult = [[TFLClassificationResult alloc] init];
52+
classificationResult.classifications = classificationHeads;
53+
return classificationResult;
5154
}
5255

5356
@end

tensorflow_lite_support/ios/test/task/vision/image_classifier/TFLImageClassifierTests.swift

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,14 @@ class TFLImageClassifierTests: XCTestCase {
4949
let imageClassifier =
5050
try TFLImageClassifier.imageClassifier(options: imageClassifierOptions!)
5151

52-
let gmlImage = try gmlImage(withName:"burger_crop", ofType:"jpg");
52+
let gmlImage = try gmlImage(withName:"burger-224", ofType:"png");
5353
let classificationResults: TFLClassificationResult = try imageClassifier.classify(gmlImage:gmlImage)
5454

5555
XCTAssertNotNil(classificationResults)
5656
XCTAssert(classificationResults.classifications.count == 1
5757
&& classificationResults.classifications[0].categories.count > 0
58-
&& classificationResults.classifications[0].categories[0].label == "cheeseburger")
58+
&& classificationResults.classifications[0].categories[0].label == "cheeseburger"
59+
&& classificationResults.classifications[0].categories[0].score >= 0.70)
5960

6061
}
6162

@@ -72,14 +73,15 @@ class TFLImageClassifierTests: XCTestCase {
7273
let imageClassifier =
7374
try TFLImageClassifier.imageClassifier(options: imageClassifierOptions!)
7475

75-
let gmlImage = try gmlImage(withName:"burger_crop", ofType:"jpg");
76+
let gmlImage = try gmlImage(withName:"burger-224", ofType:"png");
7677

7778
let classificationResults: TFLClassificationResult = try imageClassifier.classify(gmlImage:gmlImage)
7879

7980
XCTAssertNotNil(classificationResults)
8081
XCTAssert(classificationResults.classifications.count == 1
81-
&& classificationResults.classifications[0].categories.count > 0
82-
&& classificationResults.classifications[0].categories[0].label == "cheeseburger")
82+
&& classificationResults.classifications[0].categories.count <= maxResults
83+
&& classificationResults.classifications[0].categories[0].label == "cheeseburger"
84+
&& classificationResults.classifications[0].categories[0].score >= 0.70)
8385

8486
}
8587

@@ -89,14 +91,11 @@ class TFLImageClassifierTests: XCTestCase {
8991

9092
let imageClassifierOptions = TFLImageClassifierOptions(modelPath: modelPath)
9193
XCTAssertNotNil(imageClassifierOptions)
92-
93-
let maxResults = 3
94-
imageClassifierOptions!.classificationOptions.maxResults = maxResults
9594

9695
let imageClassifier =
9796
try TFLImageClassifier.imageClassifier(options: imageClassifierOptions!)
9897

99-
let gmlImage = try gmlImage(withName:"burger_crop", ofType:"jpg");
98+
let gmlImage = try gmlImage(withName:"burger-224", ofType:"png");
10099

101100
let roi = CGRect(x: 20, y: 20, width: 200, height: 200)
102101
let classificationResults =
@@ -105,7 +104,8 @@ class TFLImageClassifierTests: XCTestCase {
105104
XCTAssertNotNil(classificationResults)
106105
XCTAssert(classificationResults.classifications.count == 1
107106
&& classificationResults.classifications[0].categories.count > 0
108-
&& classificationResults.classifications[0].categories[0].label == "cheeseburger")
107+
&& classificationResults.classifications[0].categories[0].label == "cheeseburger"
108+
&& classificationResults.classifications[0].categories[0].score >= 0.90)
109109

110110
}
111111

@@ -127,7 +127,8 @@ class TFLImageClassifierTests: XCTestCase {
127127
XCTAssertNotNil(classificationResults)
128128
XCTAssert(classificationResults.classifications.count == 1
129129
&& classificationResults.classifications[0].categories.count > 0
130-
&& classificationResults.classifications[0].categories[0].label == "junco")
130+
&& classificationResults.classifications[0].categories[0].label == "junco"
131+
&& classificationResults.classifications[0].categories[0].score >= 0.25)
131132

132133
}
133134

0 commit comments

Comments
 (0)