Этот вопрос может показаться дубликат, но она имеет вид конкретный момент, который может отличаться от других подобных вопросов ...Есть проблемы с сравнения двух объектов массива
Так ... У меня есть два изображения. Оба захвачены на одном экране. В моем коде посещает два (screenCaptureFirst и screenCaptureSecond) больших изображений в маленькие обрезанные изображения (каждое обрезанное изображение имеет размер 32x32). Затем я нажимаю их на два массива. И теперь мне приходится сравнивать каждый элемент из двух массивов. - (void) differenceDetector{
int index=0;
for (int currentGridY=0; currentGridY<newCapturedImage.size.height; currentGridY+=gridSize) {
for (int currentGridX=0; currentGridX<newCapturedImage.size.width; currentGridX+=gridSize) {
CGRect rect=CGRectMake(currentGridX, currentGridY, gridSize, gridSize);
UIImage *croppedNewImage=[self croppedImage:rect anImage:newCapturedImage];
[arrayOfNewImageGrids addObject:croppedNewImage];
UIImage *croppedOldImage=[self croppedImage:rect anImage:oldCapturedImage];
[arrayOfOldImageGrids addObject:croppedOldImage];
if ([[arrayOfNewImageGrids objectAtIndex:index]isEqual:[arrayOfOldImageGrids objectAtIndex:index]]) {
NSLog(@"Index=%d",index);
}
NSLog(@"newGridArray=%@",[arrayOfNewImageGrids objectAtIndex:index]);
NSLog(@"oldGridArray=%@",[arrayOfOldImageGrids objectAtIndex:index]);
index++;
}
}
Проблема в том, когда она идет, если результат сравнения FALSE, хотя в массивах обрезаны изображения одного и того же большого изображения.
Заранее спасибо ....
Но в моем случае это похоже на объект массива ... И если я ставлю одну и ту же переменную изображения (newCapturedImage, oldCapturedImage), у меня есть успех. Но если переменные изображения отличаются друг от друга, это терпит неудачу. – Garnik
"как объект массива"? Что это значит и как оно относится к тому, что я вам сказал? И сравнение объекта с самим собой, что, как я думаю, вы подразумеваете под «если я ставлю одну и ту же переменную изображения ... у меня есть успех», всегда будет сообщать о равенстве. Вот что я сказал выше. –
ОК, я понял. Теперь ясно ... Я не могу сравнивать два разных изображения. Если я хочу это сделать, я должен сравнить их пиксель за пикселем ... правильно? – Garnik